Java基础快速复习(二)

这篇博客主要复习了Java中的数组操作,包括声明、创建与foreach循环,详细介绍了Arrays类的功能。此外,还讲解了如何进行文件读写,如FileInputStream和FileOutputStream的使用。最后,探讨了Scanner类的创建方法以及next()与nextLine()方法的区别。
摘要由CSDN通过智能技术生成

摘抄整理于W3Cschool的Java教程,比较适用于学过Java但一段时间没有接触的复习回顾。

1 数组

1.1 数组的声明、创建

声明数组变量

double[] myList;         // 首选的方法
或
double myList[];         //  效果相同,但不是首选方法,来自于C/C++的风格

创建数组
Java语言使用new操作符来创建数组,语法如下

arrayRefVar = new dataType[arraySize];
//如:
myList = new double[10];

上面的语法语句做了两件事:

  • 使用new dataType[arraySize]创建了一个数组。
  • 把新创建的数组的引用赋值给变量 arrayRefVar。

数组变量的声明,和创建数组可以用一条语句完成,如下所示:

dataType[] arrayRefVar = new dataType[arraySize];
如:
double[] myList = new double[10];

上面的语句首先声明了一个myList数组变量,接着创建了一个包含10个double元素的数组,并将数组的引用赋值给myList变量。
也可以这样创建数组:

dataType[] arrayRefVar = {value0, value1, ..., valuek};
如:
double[] myList = {1.1,4.2,...,3.8};

实例

public class TestArray {

   public static void main(String[] args) {
      double[] myList = {1.9, 2.9, 3.4, 3.5};

      // 打印所有数组元素
      for (int i = 0; i < myList.length; i++) {
          System.out.println(myList[i] + " ");
       }
       // 计算所有元素的总和
       double total = 0;
       for (int i = 0; i < myList.length; i++) {
          total += myList[i];
       }
       System.out.println("Total is " + total);
       // 查找最大元素
       double max = myList[0];
       for (int i = 1; i < myList.length; i++) {
          if (myList[i] > max) max = myList[i];
      }
      System.out.println("Max is " + max);
   }
}

运行结果如下:

1.9
2.9
3.4
3.5
Total is 11.7
Max is 3.5

1.2 foreach循环

public class TestArray {

   public static void main(String[] args) {
      double[] myList = {1.9, 2.9, 3.4, 3.5};

      // 打印所有数组元素
      foreach (double element: myList) {
         System.out.println(element);
      }
   }
}

1.3 Arrays类

java.util.Arrays类能方便地操作数组,它提供的所有方法都是静态的。具有以下功能:

  1. 给数组赋值:通过fill方法。
  2. 对数组排序:通过sort方法,按升序。
  3. 比较数组:通过equals方法比较数组中元素值是否相等。
  4. 查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。

2 读写文件

在这里插入图片描述
FileInputStream
该流用于从文件读取数据,它的对象可以用关键字new来创建。有多种构造方法可用来创建对象。

  1. 可以使用字符串类型的文件名来创建一个输入流对象来读取文件:
InputStream f = new FileInputStream("C:/java/hello");
  1. 也可以使用一个文件对象来创建一个输入流对象来读取文件。我们首先得使用File()方法来创建一个文件对象:
File f = new File ("C:/java/hello");
InputStream f = new FileInputStream(f);

创建了InputStream对象,就可以使用下面的方法来读取流或者进行其他的流操作。
在这里插入图片描述
FileOutputSteam
该类用来创建一个文件并向文件中写数据。
如果该流在打开文件进行输出前,目标文件不存在,那么该流会创建该文件。有两个构造方法可以用来创建FileOutputStream 对象。

  1. 使用字符串类型的文件名来创建一个输出流对象:
OutputStream f = new FileOutputStream("C:/java/hello");
  1. 也可以使用一个文件对象来创建一个输出流来写文件。我们首先得使用File()方法来创建一个文件对象。
File f = new File("C:/java/hello");
OutputStream f = new FileOutputStream(f);

创建OutputStream 对象完成后,就可以使用下面的方法来写入流或者进行其他的流操作。
在这里插入图片描述

3 Scanner类

3.1 下面是创建Scanner对象的方法:

Scanner s = new Scanner(System.in)
//从键盘接收数据

3.2 next()与nextline()的区别

next():
1.在输入有效符之前的空白符会被忽略
2.一定要遇到有效符之后才可以结束
3.只要输入有效符以后的空白符作为空白符作为结束符或者分隔符
4.next()不会得到带空白符的字符串
nextline():
1.以Enter作为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。
2.可以包括空白符。

Scaner scan = new Scanner(System.in)
if(scan.hasNext())//判断是否还有输入
if(scan.hasNextLine())//判断是否还有输入
if(scan.hasNextInt())//判断是否还有输入整数
if(scan.hasNextFloat())//判断是否还有输入小数
while(scan.hasNextDouble())  //当输入的还是数字
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值