java基础类型与输入输出

发布时间:2024年01月15日

本文简述在算法中常用的基本数据类型,以及输入输出方法。

数据类型

1.int(整型)

int数据类型是32位、有符号的整数,以二进制补码表示。
最小值是-2,147,483,648 (-2^31)。
最大值是2,147,483,647(2^31-1)。
默认值是0。

  • 整型的最小值、最大值分别用 Integer.MIN_VALUEInteger_MAXVALUE 来表示。代码如
int intMin = Integer.MIN_VALUE;
int intMax = Integer.MAX_VALUE;
System.out.println("int最小值:" + intMin);
//输出-2147483648
System.out.println("int最大值:" + intMax);
//输出2147483647
  • 整型溢出
    在输入整数时,尽量使用long类型避免使用int类型导致整型溢出,如果整型数字大小大于 10^9 左右,可能就会导致溢出。
    溢出的代码表现,如
int x = Integer.MAX_VALUE;
System.out.println(x);
//输出2147483647
x += 1;
System.out.println(x);
//输出-2147483648,溢出到int型的最小值开始

2.long(长整型)

long数据类型是64位、有符号的整数,以二进制补码表示。
最小值是-929,223,372,036,954,775,808(-2^63)。
最大值是929,223,372,036,954,775,807(2^63-1)。
默认值是0。

  • 长整型的最小值和最大值分别表示为 Long.MIN_VALUELong.MAX_VALUE,如
long longMin = Long.MIN_VALUE;
long longMax = Long.MAX_VALUE;
System.out.println("long最小值:" + longMin);
System.out.println("long最大值:" + longMax);

float(单精度浮点数)

  • float数据类型是单精度、32位
  • float在储存大型浮点数组的时候可以节省内存空间;
  • 默认值是0.0
  • 浮点数不能来表示精确的值(与double类型一致)。
    原因:由于计算机的数字的存储和运算都是通过二进制进行的,而十进制小数转换成二进制小数,采用的是"乘2取整,顺序排列"法
    在转换过程后,部分十进制小数的二进制表示就会出现无限循环的情况,例如(0.1)10 = (0.000110011001100…)2。
  • float的最小值和最大值分别表示为Float.MIN_VALUE 和 Float.MAX_VALUE,如
float floatMin = Float.MIN_VALUE;
float floatMax = Float.MAX_VALUE;
System.out.println("float最小值:" + floatMin);
System.out.println("float最大值:" + floatMax);

double(双精度浮点数)

  • double数据类型是双精度、64位
  • 浮点数的默认类型是double类型
  • 默认值也是0.0;
  • 无法表示精确的值(跟float一致);
  • double的最小值和最大值分别表示为Double.MIN_VALUE 和 Double.MAX_VALUE,如
double doubleMin = Double.MIN_VALUE;
double doubleMax = Double.MAX_VALUE;
System.out.println("double最小值:" + doubleMin);
System.out.println("double最大值:" + doubleMax);

boolean(布尔类型)

  • boolean数据类型表示一位的信息;
  • 取值为:true(真)和flase(假)
  • 默认值是false。

char(字符类型)

  • char类型是16位无符号Unicode字符
  • 表示单个字符,并且可以存储任何字符(字母、数字、符号等);
  • 默认值是’\u0000’
  • 最小值1是0(即’\u0000’)
  • 定义用 ’ '(单引号)。

String(字符串类型)

  • String是由字符构成的序列,它是Java中的一个类,而不是基本数据类型;
  • 没有明确的最小值和最大值,因为它是一个类而不是基本数据类型;
  • 默认值是null
  • 定义用 " "(双引号)。

输入和输出

输入

Java提供了多种方式来进行输入,常用的是Scanner类。

  1. 导入java.util包中的Scanner类。
  2. 创建Scanner对象,参数System.in 是 Java 中的标准输入流。
  3. 使用输入函数来读取数据。
  4. 各数据类型的输入函数如下:
import java.util.Scanner;

public class Main{
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        // 读取整数
        System.out.print("请输入一个整数: ");
        int intValue = scanner.nextInt();

        // 读取长整型
        System.out.print("请输入一个长整数: ");
        long longValue = scanner.nextLong();

        // 读取单精度浮点数
        System.out.print("请输入一个单精度浮点数: ");
        float floatValue = scanner.nextFloat();

        // 读取双精度浮点数
        System.out.print("请输入一个双精度浮点数: ");
        double doubleValue = scanner.nextDouble();

        // 读取布尔值
        System.out.print("请输入一个布尔值(true/false): ");
        boolean booleanValue = scanner.nextBoolean();

        // 读取字符
        System.out.print("请输入一个字符: ");
        char charValue = scanner.next().charAt(0);

        // 读取字符串
        System.out.print("请输入一个字符串: ");
        String stringValue = scanner.next();

        // 打印输入的值
        System.out.println("整数:" + intValue);
        System.out.println("长整数:" + longValue);
        System.out.println("单精度浮点数:" + floatValue);
        System.out.println("双精度浮点数:" + doubleValue);
        System.out.println("布尔值:" + booleanValue);
        System.out.println("字符:" + charValue);
        System.out.println("字符串:" + stringValue);
    }
}

输出

输出采用System.out.println()和System.out.print()。
System.out.println()输出完会自动换行,System.out.print()不会。
上面的代码有很多使用输出函数的例子,可以回顾看看。

文章来源:https://blog.csdn.net/weixin_72939806/article/details/135606644
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。