Java中的System类和一些练习

这篇具有很好参考价值的文章主要介绍了Java中的System类和一些练习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

​​​​​​​

目录

常用方法:

第一个方法:

第二个方法:

第三个方法:

方法 三 的拓展:


  • System 和 Math 一样,也是一个工具类,提供了一些与系统相关的方法

常用方法:

Java中的System类和一些练习,java,开发语言

第一个方法:

//        方法的形参:0表示虚拟机是正常停止
//        非0表示虚拟机异常停止

        System.out.println("会执行");

        System.exit(0);

        System.out.println("看看我执行了吗");


        //但我们需要把整个程序停止,就可以调用这个方法

第二个方法:

返回当前时间毫秒值,并且以 1970 年 1 月 1 日 08:00:00 作为计算机中的时间原点(含时差); 1 秒=1000 毫秒

System.out.println(System.currentTimeMillis());
//分两次时间打印 :第一次1705373724363  第二次1705373737774
//看得出时间是在变化的

那这个方法的作用在哪?

public class Test02 {
    public static void main(String[] args) {

     /*求1~100000中的质数*/
        
        long start = System.currentTimeMillis();//开始
        
        for (int i = 1; i < 100000; i++) {
            if (check1(i)) {
                System.out.println(i);
            }
        }
        long end = System.currentTimeMillis();//结束

          //获取程序运行时间
        System.out.println(end-start);//老方法需要578毫秒
    
    }
    public static boolean check1(int number) {
        //验证是否是质数的方法(老方法)
        for (int i = 2; i < number; i++) {
            if (number % i == 0) {
                return false;
            }
        }
        return true;
    }
}
public class Test02 {
    public static void main(String[] args) {

     /*求1~100000中的质数*/
        
        long start = System.currentTimeMillis();//开始
        
        for (int i = 1; i < 100000; i++) {
            if (check2(i)) {
                System.out.println(i);
            }
        }
        long end = System.currentTimeMillis();//结束

          //获取程序运行时间
        System.out.println(end-start);//新方法只需要33毫秒
    		//可以验证出改进的方法效率确实更高了
    }
  //验证是否是质数的方法(新方法--效率更高)
    public static boolean check2(int number) {
        for (int i = 2; i <= Math.sqrt(number); i++) {
            if (number % i == 0) {
                return false;
            }
        }
        return true;
    }
}

得出此方法可以验证程序运行速度。


第三个方法:

int []arr1={1,2,3,4,5,6,7,8,9,10};
int []arr2=new int[10];

    	//拷贝arr1到arr2
        System.arraycopy(arr1,0,arr2,0,10);
    	//遍历arr2
        for (int i = 0; i <arr2.length ; i++) {
            System.out.print(arr2[i]+" ");
        }
        System.out.println();



控制台:

1 2 3 4 5 6 7 8 9 10

练习:使 arr2 为: 0 0 0 0 1 2 3 0 0 0

    	//拷贝arr1到arr2
        System.arraycopy(arr1,0,arr2,4,3);

练习:使 arr2 为:0 0 7 8 9 0 0 0 0 0

    	//拷贝arr1到arr2
        System.arraycopy(arr1,6,arr2,2,3);

方法 三 的拓展:

  1. 如果数据源数组和目的数组是基本数据类型,那么类型必须一致,否则报错
int []arr1={1,2,3,4,5,6,7,8,9,10};
double []arr2=new double[10];
  1. 在拷贝的时候必须考虑数组长度,如果超出范围也会报错
int []arr1={1,2,3,4,5,6,7,8,9,10};
int []arr2=new int[5];

3.若数据源数组和目的数组都是引用数据类型,那么子类类型可以拷贝给父类类型

public class Test05 {
    public static void main(String[] args) {
        
        Student s1=new Student("张胜男1",21);
        Student s2=new Student("李胜男2",22);
        Student s3=new Student("王胜男3",23);
        //数据源数组和目的数组都是引用数据类型
        Student []arr1={s1,s2,s3};
        Person []arr2=new Person[3];
        //arr1拷贝到arr2
        System.arraycopy(arr1,0,arr2,0,3);
        //遍历arr2
        for (int i = 0; i <arr2.length ; i++) {
            System.out.println(arr2[i].getName()+" ,"+arr2[i].getAge());
        }
    }
}



//父类
class Person{
   private  String name;
   private int age;

   public Person(){};
   public Person (String name ,int age){
       this.name=name;
       this.age=age;
   }

   public void setName(String name){
       this.name=name;
   }
    public String getName(){
       return name;
    }


    public int getAge() {
        return age;
    }


    public void setAge(int age) {
        this.age = age;
    }
}

//子类
class Student extends Person{
    public  Student(){};
    public Student(String name,int age){
        super(name, age);
    }
}

控制台:

张胜男1 ,21

李胜男2 ,22

王胜男3 ,23文章来源地址https://www.toymoban.com/news/detail-802258.html

到了这里,关于Java中的System类和一些练习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java中的类和对象

    在学习java语言的时候,经常听说java是一门 面向对象 的语言;在java里面也有 一切皆对象 这样的说法。那么到底什么是类,什么又是对象呢? 以洗衣服为例,给大家介绍面向对象和面向过程 1.1.1面向过程 我们传统的洗衣服得经历一下步骤: 注重的是洗衣服的过程 1.1.2面向对

    2024年04月28日
    浏览(40)
  • 分分钟搞定Java中的抽象类和接口!!!(abstract & interface)

    1.抽象类的定义 概述: 我们创建一个动物类,并且在这个类中创建动物对象,但是当你提到动物类,你并不知道我说的是什么动物,只有看到了具体的动物,你才知道这是什么动物,所以说动物本身并不是一个具体的事物,而是一个抽象的事物。只有真正的猫,狗才是具体的

    2024年02月01日
    浏览(45)
  • String类中的一些常用方法(JAVA)

    目录 字符串比较方法: boolean equals(Object anObject):  int compareTo(String s): int compareToIgnoreCase(String str) 字符串查找方法: char charAt(int index): int indexOf(int ch):  int indexOf(int ch, int fromIndex): int indexOf(String str): int indexOf(String str, int fromIndex): int lastIndexOf(int ch): int lastIndexOf(in

    2024年02月07日
    浏览(43)
  • Java中的String字符串练习

    目录 Java中的String字符串练习 01-用户登录 02-遍历字符串并统计字符个数 03-字符串拼接 04-字符串反转 注意点 05-金额转化(简单) 代码解释: 06-手机号屏蔽 07-身份证号码查看 易错点: 08-敏感词替换 注意点 toCharArray() 是Java中的一个方法,它用于将字符串转换为字符数组。 方法签

    2024年03月28日
    浏览(66)
  • 【网安】处理项目中的一些常见漏洞bug(java相关)

    [福利:[ 网络安全重磅福利:入门进阶全套282G学习资源包免费分享 !]](网络安全重磅福利:入门进阶全套282G学习资源包免费分享! ) 1.写在前面 很多时候,一些项目,或许都会有一定的系统安全要求。一般常见于政府项目比较多!!! 项目做完后,都需要做一些安全的扫

    2024年02月13日
    浏览(38)
  • 《使用循环做一些练习》---C语言

    目录 前言: 1.练习专题 1.1打印1-100之间的奇数 1.2计算n的阶乘 1.3计算到达n阶乘的前m个阶乘相加 1.4演示字符串动态变化的效果 2.goto语句 ❤博主CSDN:啊苏要学习   ▶专栏分类:C语言◀   C语言的学习,是为我们今后学习其它语言打好基础,C生万物!   开始我们的C语言之旅吧

    2024年02月01日
    浏览(35)
  • 关于java中的多态和对实例化对象的一些理解

    java面向对象三大特征即为:继承封装多态。而多态需要三大必要条件。分别是:继承、方法重写、父类引用指向子类对象。我们先一个一个来理解。 1、首先是继承和重写。这个很简单。因为多态就是建立在不同的重写之上的。也就是说多态就是在使用着一个方法的不同重写

    2024年02月02日
    浏览(40)
  • 工作三年后, 我作为Java后端开发的一些心得

    敢于和善于使用package 对于Java后端开发来讲, 在长时间的web开发中. 大家已经熟悉了MVC架构, 也被这套结构所束缚. 导致创建出来的包也一直都是controller, manager, service, dao. 也将各种各样的类文件都放入其中. 这并不是一种好的做法. 其实我们可以大胆的创建相关的package, 只要让

    2024年02月13日
    浏览(36)
  • 关于java中的多态和对实例化对象以及向上、向下转型的一些理解

    java面向对象三大特征即为:继承封装多态。而多态需要三大必要条件。分别是:继承、方法重写、父类引用指向子类对象。我们先一个一个来理解。 1、首先是继承和重写。这个很简单。因为多态就是建立在不同的重写之上的。也就是说多态就是在使用着一个方法的不同重写

    2024年02月02日
    浏览(44)
  • JAVA开发(手工处理数据库表数据的一些示例算法)

    背景: 在项目开发中,有时候需要手动处理一下数据库表的数据。涉及到数据得到备份、恢复,清洗,计算,合并等操作。 举例记录一下最近对数据的一些处理过程。 1、对数据表进行数据量统计 2、记住数据库表的数据,然后进行备份 3、我们再对数据进行处理之前一定记

    2024年02月07日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包