输入、输出,循环、大数值、数组

一、输入输出

1)数组类型

Scanner(System.in)可见这个" in" :输入;

System.out.println(a); 可见 "out" :输出。

import java.util.*;
public class Test{
    public static void main(String[] aaa){
        Scanner xx = new Scanner(System.in);
        int[] arr = new int[10];
        for(int i = 0;i < arr.length;i++){
        arr[i] = nextInt();
    }
    for(int a : arr){
        System.out.println(a);
    }
}

以上代码:

a 代表 arr 中的每一个数字,因为每个都是int类型,所有用int。

输出结果:

输入十个数字,输出出来。

 2)字符串类型

import java.util.*;
public class Test{
    public static void main(String[] aaa){
    Scanner xx = new Scanner(System.in);
    String str = xx.nextLine();
    String str2 = xx.nextLine();
    System.out.println("输入的第一个字符是:" + str);
    System.out.println("输入的第二个字符是:" + str2);
    }
}

输出:

 二、格式化输出(按照指定的格式输出)

import java.util.*;
public class Test{
    public static void main(String[] aaa){
    String xx = String.format("========%s==%d%s====","大家好",89,"###");
 	System.out.println(xx);

    }
}

输出:

String xx = String.format("======%s==%d%s====","大家好",89,"###");这个是常用的,格式化输出转化为字符串。

三、文件输入输出

启动路径就是命令解释器的当前路径。 然而,如果使用集成开发环境, 那么启动路径将由 IDE 控制。 可以使用下面的调用方式找到路径的位置:

String dir = System.getProperty("user.dir");

会把当前执行文件路径输出。

 

四、记事本原理

记事本存的就是在磁盘上的二进制文件。

头部固定长度,采用的是什么编码。

假如知道采用的是Ascaii编码,那么每次读取8位,去形状库匹配,匹配到哪个形状就发到显示器上;如果是Unicode编码,每次就是读16位;UTF-8也是每次读16位;定长定长的读。

五、循环

1)while循环、do...while循环(第一次执行不需要判断)、for循环

 2)switch

选择

要写break

case 标签可以是: (switch可选类型)(面试题)

•类型为 char、byte、 short 或 int 的常量表达式。

•枚举常量。

•从 Java SE 7开始, case 标签还可以是字符串字面量。

switch击穿:不写break,它会一直往下匹配直到有break。

 break

break可以打断一层循环,不能打断多层循环。打断当前循环。

continue:遇到时循环后面内容不执行,直接进行下次循环。

六、大数值

如果基本的整数和浮点数精度不能够满足需求 那么可以使用 jaVa . math 包中的两个
很有用的类 Biglnteger BigDecimaL 这两个类可以处理包含任意长度数字序列的数值
Biglnteger 类实现了任意精度的整数运算 BigDecimal 实现了任意精度的浮点数运算
使用静态的 valueOf 方法可以将普通的数值转换为大数值
Biglnteger a = Biglnteger . valueOf ( 100 ) ;
遗憾的是 不能使用人们熟悉的算术运算符 + * ) 处理大数值 而需要使用大数
值类中的 add multiply 方法。
import   java.util.;
import   java.math.;
public class Test1{
public static void main(String[] aaa){
    Scanner in = new Scanner(System.in);
    System.out.print("How many numbers you need to draw?");
	int k = in.nextInt();

	System.out.print("What is the highest number you can draw?");
	int n = in.nextInt();

	BigInteger lotteryOdds = BigInteger.valueOf(1);
	
	for(int i = 1;i <= k; i++){
		lotteryOdds = lotteryOdds.multiply(BigInteger.valueOf(n - i + 1)).divide(
		BigInteger.valueOf(i));

	System.out.println("Your odds are 1 in" + lotteryOdds + ".Good luck!");
	}
}
}

七、数组

数组 本身是引用类型,不是基本类型 

数组的三种方式:

基本类型的一维数组:

int[] a = new int[10]; 10个空间 默认都是0

int[] b = {1, 2, 3, 4, 5};

int[] c = new int[]{2, 3, 4, 5, 6};

二维数组:

int[][] a = new int[3][5];

int[][] b = {

{0, 0, 0, 0, 0},

{0, 0, 0, 89, 0}.

{0, 0, 0, 0, 0}

};

a[1][3] = 89;

三维数组:

int[][][] c = new int[3][4][5];

int[][][] d = {

{ {0, 0, 0, 0, 0},{0, 0, 0, 0, 0},{0, 0, 56, 0, 0},{0, 0, 0, 0, 0} },

{ {0, 0, 0, 0, 0},{0, 0, 0, 0, 0},{0, 0, 0, 0, 0},{0, 0, 0, 0, 0} },

{ {0, 0, 0, 0, 0},{0, 0, 0, 0, 0},{0, 0, 0, 0, 0},{0, 0, 0, 0, 0} },

};

c[0][2][2] = 56;

不规则数组:

引用类型的“=” 相当于把自己的指向给换掉。

引用类型的句柄和值不在同一个位置。

一维数组

二维数组

new

指向新的,切换指向。c++指针和java引用类型的句柄(引用类型等于什么),一定是改变自己的指向。

字符串数组:

String[] arr = {"aaa", "ddd", "ggg"};

for(String a : arr){

System.out.println(a);

}

浅拷贝:引用类型 “=”

Arrays.sort(a);

进行排序(打算法经常用)

int[] a = {4, 45, 7, 3, 4, 65, 354};

Arrays.sort(a);

for(int b : a){

System.out.println(b);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值