コードとデータ型のJava 1行目
1. Javaのコードの最初の行
1.1 Notepad ++の準備
a. 设置 --> 首选项 --> 新建
环境选择 windows
编码集 ANSI
b. 设置 --> 首选项 --> 自动完成
全部反选(训练写代码能力)
1.2コードの最初の行
class FirstJava {
public static void main(String[] args) {
System.out.println("HelloWorld");
}
}
1.3コンパイルして実行する
javac 编译工具
javac 源文件名.java
例如:
javac FirstJava.java
编译之后会生成一个 FirstJava.class文件,
.class字节码文件,二进制文件,需要借助于JVM执行解释给CPU
java 执行工具
java 类名
例如:
java FirstJava
终端:
HelloWorld
1.4コードの最初の行に関する問題
1. 注意拼写错误!!!
大小写错误,单词拼写错误
2. 标点符号问题
Java代码中基本上所有的开发使用标点符号都是英文标点符号
3. 成双成对的标点符号一起写完
{} [] () <> "" ''
4. 编码问题
Notepad++ 编码 ==> 转为ANSI即可!!!
2.コード仕様[強調]
完了するには、AJCG Alibaba Java開発仕様を参照してください。
2.1識別子とは
开发中标识符就是名字
类名,方法名,变量名
2.2 AJCG【キー】
1. 标识符可以使用的字符范围,英文字母(A ~ Z a ~ z) 数字(0 ~ 9) 唯一可以使用的标点符号 _
2. 标识符要求必须英文字母开头
3. 标识符严格区分大小写,大写A和小写a完全不一样!
4. 标识符没有严格的长度限制,但是会根据实际需求来限制标识符的长度
5. 标识符组需要做到见名知意,动宾结构!!!
规范格式
studentAge studentScore 见名知意
getStudentAge setStudentAge 动宾结构
title logo banner
payTime
不允许格式:
int a, b, c, d, e, f, g;
img0 img1 img2 img3 img4 img5
payBeizhu 不允许
tsgly 图书管理员!!! 不允许
6. 推荐使用驼峰命名法和下划线命名法
小驼峰命名法:【适用于 变量名,方法名】
标识符首字母小写,之后的每一个单词首字母大写
studentAge studentScore 见名知意
getStudentAge setStudentAge 动宾结构
iPhone iMac iTouch
大驼峰命名法:【适用于 类名,接口名】
标识符所有的单词首字母全部大写
FirstJava String
下划线命名法:
所有的字母都是大写的情况下,为了区分单词直接的间隔,使用下划线命名法
JAVA_HOME CLASS_PATH
DEFAULT_CAPACITY
7. 已经被Java使用的关键字和保留字不得用于自定义标识符使用
变色的不能使用,大写开头的不能使用
3.変数【キー】
3.1基本的な定義
a. 变量是定义在计算机内存中
1. 明确的数据类型
2. 明确的变量名
3. 明确的对应数据
b. 基本的定义格式
1.
数据类型 变量名;
变量名 = 对应数据类型的值; = 赋值
2.
数据类型 变量名 = 对应数据类型的值;
c. 变量分类
a. 基本数据类型
八大基本数据类型
整数
小数
布尔
字符
b. 引用数据类型
字符串
数组
对象
3.2基本的なデータ型
整数 |
メモリサイズ |
値の範囲 |
バイト |
1バイト8ビット |
-128〜127 |
ショート |
2バイト16ビット |
-2 ^ 16〜2 ^ 16-1 |
int |
4バイト32ビット |
-2 ^ 32〜2 ^ 32-1 |
長いです |
8バイト64ビット |
-2 ^ 64〜2 ^ 64-1 |
浮動小数点 |
メモリサイズ |
値の範囲 |
浮く |
4バイト |
10 ^ 38 |
ダブル |
8バイト |
10 ^ 308 |
ブール型 |
メモリサイズ |
値の範囲 |
ブール |
1バイト |
真/偽 |
キャラクター |
メモリサイズ |
値の範囲 |
チャー |
2バイト |
中国語を保存する能力 |
3.3変数を定義するコードの最初の行
class VariableTest {
public static void main(String[] args) {
byte byteNumber = 10;
short shortNumber = 20;
int intNumber = 30;
long longNumber = 40L;
System.out.println(byteNumber);
System.out.println(shortNumber);
System.out.println(intNumber);
System.out.println(longNumber);
float floatNumber = 3.14F;
double doubleNumber = 0.618;
System.out.println(floatNumber);
System.out.println(doubleNumber);
char ch1 = 'A';
char ch2 = '中';
System.out.println(ch1);
System.out.println(ch2);
boolean ret1 = true;
boolean ret2 = false;
System.out.println(ret1);
System.out.println(ret2);
}
}
3.4変数の定義における問題の要約
3.4.1互換性のないデータ型
VariableTest.java:16: 错误: 不兼容的类型: 从double转换到float可能会有损失
float floatNumber = 3.14;
^
1 个错误
计算机为了保证数据的精度,同时为了数据后期的延展性,会默认把所有的小数都认为是double类型,double占用的内存空间是8字节,而float是4字节,会报错。这里需要告诉计算机3.14是一个float类型,在小数之后加上一个大写F
修改:
float floatNumber = 3.14F;
3.4.2 long型の変数代入演算の要件
【要求】
给予long类型的数据需要在常量之后加上一个大写L,明确告知计算机这里使用的是一个long类型数据
修改:
long longNumber = 40L;
3.4.3 Javaの変数は割り当てなしでは使用できません
VariableTest.java:44: 错误: 可能尚未初始化变量num
System.out.println(num);
^
1 个错误
Java中规定,一个变量在没有被赋值的情况下,不能参与除赋值之外的其他任何操作。
避免了没有必要的野值问题。
3.4.4未定義は使用できません
VariableTest.java:46: 错误: 找不到符号
num = 10;
^
符号: 变量 num
位置: 类 VariableTest
1 个错误
Java中规定,变量未定义不能使用
必须先定义,后使用
4.キャラクター
4.1文字定数の基本概念
英文单引号包含的单个元素
4.2エスケープ文字
\ 转义字符标记
将带有特定含义字符转换为无意义字符
或者把无意义字符,转换成带有一定含义字符
常用:
\'
\"
\n 回车
\t tab键 制表符
转义字符有且只能处理一个字符
\\ 表示一个反斜杠
\\\\ 表示两个反斜杠
4.3文字定数を使用するための要件
有且只允许使用字符本身!!!
'A' 'a'
优势:
1. 阅读性好
2. 保证数据类型一致化
3. 减少了没有必要的歧义
5.文字列【初対面】
5.1文字列データ型
字符和字符串什么关系?
羊肉和羊肉串关系就可以认为是字符和字符串的关系
字符串特定标记
"" 英文双引号包含的所有内容都是字符串本身,并且是一个常量,不可以修改
String字符串数据类型
6.型変換【理解】
6.1自動型変換
小数据类型转换到大数据类型
6.2必須の型変換
强制类型转换,是从大数据类型到小数据类型的转换过程。
double类型数据保存到int类型,这里需要强制类型转换
格式:
double num1 = 3.5;
// 这里存在数据精度丢失,并且是不可以逆
int num2 = (int) num1;
【个人建议】
对于基本数据类型的强制类型转换,个人不建议使用,这里会导致数据精度的丢失,并且有可能导致其他问题。
强制类型转换在面向对象开发中,可以用来操作对象直接的关系
7.オペレーター
7.1算術演算子
+ - * / % ()
1. 从左至右计算
2. 先乘除后加减
3. 有括号先处理括号里面的内容
4. 除数不能为0
%
7 ÷ 3 = 2 …… 1
2 相除的结果
1 是余数
优先级问题:
简单粗暴加括号
= 赋值号
作用是将赋值号右侧的数据,赋值给左侧的【变量】
算术运算符优化
+=, -=, *=, /=, %=
例如:
int num1 = 10;
int num2 = 20;
num2 = num1 + num2; ==> num2 += num1;
8.宿題
1. 代码写三遍,注意代码格式
2. 打字练习