Java 学习笔记 day2

Java 数据类型-基本数据类型

整数类型

类型占用存储空间表数范围
byte1字节-128~127
short2字节-2^15~2^15-1
int4字节-2^31~2^31-1
long8字节-2^63~2^63-1
     Java 语言的整型常量默认为int型,声明long型常量可以后加‘ l ’或‘ L ’ .

浮点类型

十进制数形式,例如 : 3.14    314.0
科学记数法形式,如 3.14e2   3.14E2
类型占用存储空间表数范围
float

4字节

-3.403E38~3.403E38
double8字节
-1.798E308~1.798E308
●  float:单精度,尾数可以精确到 7 位有效数字。很多情况下,精度很难满足需求。
               定义 float类型的变量,赋值时需要以fF作为后缀
●  double:双精度,精度是 float 的两倍。通常采用此类型。
Java 的浮点型常量默认为double型。

逻辑型boolean(布尔)

● boolean 类型适于逻辑运算,一般用于程序流程控制 。
java 语言中boolean 类型数据只允许取值 true false

字符型char char 型数据用来表示一个单个字符

char 2 字节 .
用单引号括起来
例如: char c1 = 'a';
            char c2 =' ';
 char 运算
char 类型是可以运算的因为 char 在字符编码表中有对应的数值。
Java 中,对 char 类型字符运行时,直接当做对应编码表的整数来对待。
char c= ‘a’ +1; 先将’ a ’提升为 int ,计算结果 98

String不是基本数据类型,属于引用数据类型

使用一对 "" 来表示一个字符串,内部可以包含 0 个、 1 个或多个字符。
声明方式 :
例如: String str = “abcd” ;
           String name = “张三” ;
String java 类库中提供的一个类 , 用类来当做字符串变量类型 .
运算规则
1. 任意八种基本数据类型的数据与 String 类型只能进行连接 “+” 运算,且结果一定
也是 String 类型
2.String 类型不能转为其他的基本类型

基本数据类型转换

基本数据类型之间转换
8种基本数据类型除了布尔类型,其他类型之间可以相互转换
转换规则:
     byte  char  short   会自动默认转换为int
     long  8字节
     float  4字节
     double  8字节
     注意:4字节的float类型表示范围大于8字节long类型
           原因为浮点数在存储时结构与整数计算方式不同
默认转换
    将取值范围小的(或 容量小的)类型自动提升为取值范围大的(或 容量大的)类型
强制转换
    容量大的转换为容量小的,可能会出现溢出,可能会精度丢失


 

运算符

分类运算符
算术运算符+、-、*、/、%、++、--
赋值运算符=、+=、-+、*=、/=、%=
关系运算符>、<、>=、<=、==、!=
逻辑运算符&、|、^、!、&&、||
位运算符&、|、^、~、<<、>>、>>>
条件运算符
(条件表达式)?表达式1:表达式 2

注意:

+     数值+数值   数值+字符   字符串+数值   字符串+字符串

==  数值==数值  布尔==布尔 引用类型==引用类型 
+=  -=   进行隐式数据类型转换
逻辑运算符:逻辑值与逻辑值进行运算
& :   逻辑与    所有表达式结果为true,最终结果为true,否则为false
               当第一个表达式结果为false,还会继续执行后面的其他表达式
&&:    逻辑与/短路与
              所有表达式结果为true,最终结果为true,否则为false
              当第一个表达式结果为false,不会执行后面的其他表达式
| :   逻辑或     当表达式中有一个是true,结果为true
                当第一个表达式结果为true时,还会执行后面表达式
||:   逻辑或/短路或
               当表达式中有一个是true,结果为true
               当第一个表达式结果为true时不会执行后面表达式
!:   逻辑非
^ :   逻辑异或   相同为false 不同为true
条件表达式结果为true 执行表达式1 否 则执行表达式2

控制台输入

具体步骤
1. 导包: import java.util.Scanner;   ( 使用系统其它类时 , 先需要导入 ,java.lang 包除外 )
2. 创建 Scanner 类型的对象: Scanner scanner = new Scanner(System.in);
3. 调用 Scanner 类的相关方法(`next() / nextXxx()`),来获取指定类型的变量
                           next() 方法用以 取得用户输入的字符串;
                           nextInt() 将取得的输入字符串转换为整数类型;
                           nextFloat() 转换成浮点型;
                           nextBoolean() 转 换成布尔型。
例:Scanner scanner = new Scanner(System.in);
    输入字符串:
    System.out.print(" 请输入姓名 ");
     String name= scanner.next ();
    System.out.println(" 姓名: "+name);
   输入整型数据:
    System.out.println("请输入年纪:");
    int age = scanner.nextInt();
  输入浮点型数据:
  float f=scanner.nextFloat();
  double d=scanner.nextDouble();

if条件结构

if (条件1){
      语句1;
} else if (条件2){
      语句2;
}……
}else if (条件N){
     语句N;
}else{
     语句
}

switch语句

表达式可以为 byte short int char 枚举类型 String类型
switch(表达式){
     case value1:  语句块  break;
     case value2:  语句块  break;
     case value3:  语句块  break;
     case valueN:  语句块  break;
  value  只能是字面量而且不能重复
 某个case分支如果没有提供break语句,则继续执行下一个case后的语句;
 当表达式的值与任一case子句中的值都不匹配时,将执行default后面的语句;
 如果没有default子句,则程序直接跳出switch语句。

循环语句分类

while 循环
do/while 循环
for 循环
如何选择
       遍历有明显的循环次数(范围)的需求,选择for循环
       遍历没有明显的循环次数(范围)的需求,选择while循环
       如果循环体语句块至少执行一次,可以考虑使用do-while循环
       本质上:三种循环之间完全可以互相转换,都能实现循环的功能


while 语句为如下形式:
while(逻辑表达式){
         循环体
         迭代部分
   }
● 执行过程
  先判断逻辑表达式的值。若=true.则执行其后面的语句,然后再次判断条件并反复执行,
  直到条件不成立为止
●  do while 语句为如下形式:
  do { 语句; … ; } while(逻辑表达式);
● 执行过程
 先执行语句,再判断逻辑表达式的值,若
 为true,再执行语句,否则结束循环。

for 语句为如下形式:
for(表达式1; 表达式2; 表达式3){ 语句; … ; }
 •执行过程
    首先计算表达式1,接着执行表达式2,若表达式2的值 = true,则执行循环语句,
    接着计算表达式3,再判断表达式2的值;依此重复下去,直到表达式2的值=false.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值