【Java伴学笔记】Day-02 变量|计算机的存储方式|数据类型|标识符|键盘输入流

一、变量

在Java中,变量用于存储数据值,可以是数字、文本或其他类型的信息。Java中的变量必须声明后才能使用,并且每个变量都有特定的类型。下面是一些基本的变量使用示例:

  1. 声明一个整型变量并赋值
int myNumber;
myNumber = 10;

或者可以在一行中完成声明和赋值:

int myNumber = 10;
  1. 声明一个浮点型变量并赋值
double myDouble = 10.5;
  1. 声明一个字符串变量并赋值
String myString = "Hello, world!";
  1. 声明一个布尔型变量并赋值
boolean myBoolean = true;
  1. 使用变量进行计算
int a = 5;
int b = 10;
int sum = a + b;
System.out.println("The sum is: " + sum);
  1. 变量的作用域
public class Main {
    public static void main(String[] args) {
        int x = 10; // x可以在main方法内部访问
        System.out.println("Value of x is: " + x);
    }
    
    public static void someMethod() {
        // System.out.println("Value of x is: " + x); // 这行代码会报错,因为x的作用域仅限于main方法
    }
}

在上面的例子中,变量x只能在main方法内部访问,它不属于someMethod方法的作用域。
7. 常量
在Java中,使用final关键字可以声明一个常量,表示这个变量的值在初始化之后不能更改。

final double PI = 3.14159;
  1. 静态变量
    静态变量属于类,而不是类的某个具体实例。它们可以在类的所有实例之间共享。
public class MyClass {
    public static int staticVariable = 10;
    
    public static void main(String[] args) {
        System.out.println("Value of staticVariable is: " + MyClass.staticVariable);
    }
}

这些例子展示了在Java中如何声明、初始化和修改变量。根据您的具体需求,您可以选择不同的变量类型和作用域。

变量相关的注意事项

  1. 只能存储一个值。
  2. 变量名不允许重复定义。
  3. 一条语句可以定义多个变量。
  4. 变量在使用前一定要赋值。
  5. 变量的作用域范围。

二、计算机的存储方式

关于进制

二进制:Binary
十进制:Decimal
八进制:Octal
十六进制:Hexadecimal

请添加图片描述

十进制转为其他进制的方法

请添加图片描述

编码

请添加图片描述

图片的存储

请添加图片描述

声音数据

请添加图片描述

三、数据类型

在 Java 中,数据类型分为两大类:基本数据类型(Primitive Data Types)和引用数据类型(Reference Data Types)。

基本数据类型

Java 有 8 种基本数据类型,它们分别是:

  1. byte:8 位有符号整数,取值范围从 -128 到 127。
  2. short:16 位有符号整数,取值范围从 -32,768 到 32,767。
  3. int:32 位有符号整数,取值范围从 -2^31 到 2^31-1。
  4. long:64 位有符号整数,取值范围从 -2^63 到 2^63-1。
  5. float:32 位 IEEE 754 浮点数。
  6. double:64 位 IEEE 754 浮点数。
  7. char:16 位 Unicode 字符,取值范围从 ‘\u0000’(即为 0)到 ‘\uffff’(即为 65,535)。
  8. boolean:表示逻辑值 true 和 false。

示例代码

public class Main {  
    public static void main(String[] args) {  
        // byte  
        byte b = 10;  
        System.out.println(b);  
        // short  
        short s = 20;  
        System.out.println(s);  
        // int  
        int i = 30;  
        System.out.println(i);  
        // long  
        long l = 999999999999999999L;  
        System.out.println(l);  
        // float  
        float f = 3.14f;  
        System.out.println(f);  
        // double  
        double d = 3.14;  
        System.out.println(d);;  
        // char  
        char c = 'a';  
        System.out.println(c);  
    }  
}

在 Java 中,当你定义一个 long 类型的变量并赋值时,如果该整数的值超出了 int 类型的范围(-2^31 到 2^31-1),那么你需要明确地告诉编译器这是一个 long 类型的值。这是因为整数常量在 Java 中默认是 int 类型的,除非你用某种方式指示编译器将其视为 long 类型。

为了指示一个整数是 long 类型,你可以在整数值后面加上字母 L(大小写均可,Ll),这样做是为了避免整数溢出并提供清晰的代码可读性。例如:

long num = 123456789012345L; // 正确,指定为 long 类型

如果你不加上 L,并且数值超出了 int 的范围,编译器会报错,因为它无法将大数值直接赋值给 int 类型的变量。例如:

int num = 123456789012345; // 错误,数值超出 int 范围

在上面的例子中,你需要将数值后面的 L 添加到整数值来修正错误:

long num = 123456789012345L; // 正确,指定为 long 类型

需要注意的是,虽然 long 类型也可以接受小数,但是在这种情况下,小数会被视为 double 类型,而不是 long 类型。如果你想要将一个精确的小数赋值给 long 类型变量,你需要对其进行类型转换。

引用数据类型

引用数据类型指向一个对象,它们包括:

  1. 类(Class):例如 String、Integer、System 等。
  2. 接口(Interface):一种只含有抽象方法和静态常量的引用类型。
  3. 数组(Array):一种可以存储多个同类数据项的容器。
  4. 枚举(Enum):在 Java 5 中引入,用于定义一组固定的常量值。
    引用数据类型默认值为 null,表示没有引用任何对象。
    基本数据类型和引用数据类型的主要区别在于:
  • 基本数据类型的变量直接存储值,而引用数据类型的变量存储的是对象的引用(内存地址)。
  • 基本数据类型在栈内存中分配空间,而引用数据类型的对象在堆内存中分配空间,引用(引用变量的值)在栈内存中。
  • 基本数据类型的赋值是值的复制,而引用数据类型的赋值是引用的复制。
  • 基本数据类型参与运算时是值参与,而引用数据类型参与运算时通常是对对象的引用参与。

四、标识符

什么是标识符?

在编程语言中,标识符(Identifier)是程序员定义的用来标识变量、函数、类、模块或其他用户定义的项目名称的字符串。

命名规则

  1. 标识符必须以字母(A-Z,不区分大小写)或下划线开头。
  2. 标识符不能是保留字或关键字。
  3. 标识符通常是大小写敏感的(如 Java、C++、C# 等)。
  4. 标识符不能包含空格或其他标点符号(除下划线和美元符号外)。
  5. 标识符的长度通常有限制,但这个限制因语言而异。

常用命名法

在编程中,常用的命名法有几种,它们旨在提高代码的可读性和一致性。以下是一些常见的命名法:

  1. 驼峰命名法(CamelCase)
    • 小驼峰命名法(lowerCamelCase):第一个单词以小写字母开始,后续单词的首字母大写。常用于变量名、函数名和对象属性。
      示例:firstName, lastName, calculateAge
    • 大驼峰命名法(UpperCamelCase):第一个单词以大写字母开始,后续单词的首字母大写。常用于类名、接口名和枚举名。
      示例:Person, LinkedList, HttpRequest
  2. 蛇形命名法(Snake Case)
    • 所有单词都用下划线分隔,并且所有字母都是小写。常用于Python和一些系统级别的编程语言。
      示例:first_name, last_name, calculate_age
  3. 帕斯卡命名法(Pascal Case)
    • 与大驼峰命名法相同,所有单词的首字母都大写。
      示例:Person, LinkedList, HttpRequest
  4. 匈牙利命名法(Hungarian Notation)
    • 在变量名前加上一个或多个前缀,以指示变量的类型或用途。这种命名法在现代编程中已经不太常见。
      示例:szName(字符串名称),nAge(整型年龄)
  5. 下划线命名法(Underscore Case)
    • 类似于蛇形命名法,但是使用单个下划线来分隔单词,并且通常用于私有变量或函数。
      示例:_first_name, _last_name, _calculate_age
  6. 大写下划线命名法(SCREAMING_SNAKE_CASE)
    • 所有单词都用下划线分隔,并且所有字母都是大写。常用于常量名。
      示例:MAX_VALUE, TOTAL_COUNT
      不同的编程语言和开发社区可能会偏好不同的命名法。在选择命名法时,最重要的是保持一致性,并遵循你所使用的编程语言或项目的标准约定。

五、键盘输入流

在Java中,实现键盘输入有多种方式,以下是一些常见的方法:

使用 Scanner

Scanner 类是Java标准库中用于获取用户输入的常用类。以下是一个简单的例子:

// 导包 -- 寻找 Scanner 类
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        // 创建对象 使用类 Scanner 实例化 对象 scanner
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入一个数字:");
        // 接收数据
        int num = scanner.nextInt();
        System.out.println("您输入的数字是:" + num);
        scanner.close();
    }
}

补充知识

Java学习九—常用包(类)之java.util包 http://t.csdnimg.cn/Kg0BA

  • 27
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值