2021-05-11

基本数据类型转换
java/* 基本数据类型之间的转换 除了boolean型,其他7种之间可以进行相互转换
/public class Demo5 {
public static void main(String[] args) { /* 默认转换 byte,short,char–>in–>long–>float–>double 容量小的数据类型 默认自动转为容量大的 /
byte b=127;
int c= 2147483647;
long d = c;
float f = d;
/
容量大的 转为 容量小的 强制类型转换 问题: 数据溢出 精度损失 /
int x = 258;
byte y = (byte)x;
System.out.println(y);
float m = 10.5F;
long n = (long)m;
System.out.println(n);
}
算术运算符
java/
算术运算符 + - * / % ++ – + 加法 字符串连接 - * / % 只能进行算数运算 /
public class OperateDemo1 { //java程序的入口/主方法/主线程
I’m public static void main(String[] args) {
int a = 10;
int b = 5;
char c = ‘d’;//100
String d = “100”;
String e = “aa”;
System.out.println(a+b); System.out.println(a+c);//整数+char(int) System.out.println(a+b+d);// 数值+(连接)字符串==字符串
System.out.println(d+e);//字符串+字符串=字符串
System.out.println(a-b); System.out.println(a-c); //System.out.println(a-d); //++ 每++一次 在原来的基础上+1 再赋值 //单独使用时++在前/后没有区别,在混合运算时++在前先自增后运算,反之则先运算后自增 // –
int x = 5;
x++;//x=x+1 // 6
++x;//x=x+1 //7
int y = x++;
int y = ++x;
System.out.println(x);//6 System.out.println(y);//6 }}
比较运算符java
/
比较运算符 == != 数值,布尔,引用类型 > < >= <= 适用于数值类(char) instanceof 类型检测 /
public class OperateDemo2 { //java程序的入口/主方法/主线程 public static void main(String[] args) { //== int a = 10; int b = 5; boolean c = true; boolean d = false; String e = “abc”; String f = “efg”; System.out.println(ab); System.out.println(cd); System.out.println(e==f); //!= System.out.println(a!=b); System.out.println(c!=d); System.out.println(e!=f); /
System.out.println(e>f); System.out.println(c>e);/ Object x = 10; //Object类型可以表示任何类型,但是实际表示的是哪种类型呢?
System.out.println(x instanceof Integer); }}
逻辑运算符
java/
逻辑运算符 & | ! ^ 可以参与逻辑运算还可以参与位运算 逻辑运算: true & false 位运算: 二进制bit位运算 6 & 3 &&(短路与) ||(短路或) /public class OperateDemo3 { //java程序的入口/主方法/主线程 public static void main(String[] args) { int a = 10;
int b = 5;
int c = 6;
int d = 20; /
//& 左右都为true 结果为true 遇到第一个false时,后面的表达式继续执行
System.out.println(a>b&b<c);
//true & true = true System.out.println(a>b&b>c);
//true & false = false System.out.println(a<b&b>c);
//false & false = false
//&&左右都为true 结果为true 遇到第一个false时,就发生短路,后面的表达式就不在执行了
System.out.println(a>b&&b<c);//true && true = true System.out.println(a>b&&b>c);//true && false = false System.out.println(a<b&&++b>c);//false && false = false System.out.println(b);/ //| 只要有一为true 结果为true System.out.println(a>b|b<c);//true | true = true System.out.println(a>b|b>c);//true | false = true
System.out.println(a<b|b>c);//false | false = false //||只要有一为true 结果为true 只要遇到第一个true 后面的表达式就不行了 System.out.println(a>b||b<c);//true || true = true
System.out.println(a>b||++b>c);//true || false = true
System.out.println(a<b||b>c);//false || false = false
System.out.println(b); /
//! System.out.println(!(a>b)); //^ 异或运算 相同为false 不同为true System.out.println(a>b^b<c);//true ^ true = false System.out.println(a>b^b>c);//true ^ false = true System.out.println(a<b^b>c);//false ^ false = false*/ }}
11.赋值运算
java/* 赋值运算符 = 注意在赋值时,值的类型与声明的变量类型一致. 牵扯到数据类型的转换(基本类型之间) 自动转换,强制转换 扩展赋值运算 += -= = /= %= /public class OperateDemo4 { //java程序的入口/主方法/主线程 public static void main(String[] args) { byte a = 12;//隐式的将int12 转为 byte int b = a; short c = (short)b; float d = 10.5f; int e = (int)(c+b+d);//混合运算时,数据类型默认会转为表达式中最大的类型 / int x = 5; long y = 10; x += y; // x=x+y System.out.println(x);/ short s = 3; //s=s+2; s = short+ int = int s+=2;//隐式转换 short + int = short }# 12.条件运算符java/* 条件运算符(3元运算符) 类型 结果 = (条件表达式)?表达式1:表达式2 必须返回一个结果,结果的类型与定义结果类型一致 if(条件){ ssss }else{ ssss } /public class OperateDemo5 { //java程序的入口/主方法/主线程 public static void main(String[] args) { int score = 70; String res = (score>=60)?“考试及格”:“挂科”; System.out.println(res); }}
位运算
java/
位运算符, 二进制的bit位的运算 << >> >>> & | ^ ~ /
public class OperateDemo6 { //java程序的入口/主方法/主线程
public static void main(String[] args) { // << 010 左移1位 100 乘法
int a = 2;
System.out.println(a<<2); //带符号 //>> 0000 0011 右移 1位 //>> 1000 0011 右移 1位
int b = -6;
System.out.println(b>>1);
//>>> 无符号右移 0100 0011 右移 1位 最高位只需要补0
System.out.println(b>>>1);
/
& 按位与 0000 0110 & 0000 0011 0010 /
int a = 6;
int b = 3;
System.out.println(a&b);
/
| 按位或 0000 0110 | 0000 0011 0111 /
int a = 6; int b = 3; System.out.println(a|b);
/
^ 按位或 0000 0110 ^ 0000 0011 0101 0000 0101 0000 0110 0011 */
int a = 6;
int b = 3;
a=a^b;
b=a^b;
a=a^b;
System.out.println(a); System.out.println(b); //~ 按位取反 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个数据可以使用Python进行解析和处理。可以按照以下步骤进行: 1. 将数据分割成每个数据项。 ``` data_items = data.split(',') ``` 2. 对于每个数据项,将其按#分割成四个小项,并存储到一个列表中。 ``` data_list = [] for item in data_items: item_list = item.split('#') data_list.append(item_list) ``` 3. 对于每个小项,进行相应的类型转换。 ``` for item in data_list: item[0] = int(item[0]) # 题号转换为整数 item[1] = datetime.datetime.strptime(item[1], '%Y-%m-%d %H:%M:%S') # 时间转换为datetime类型 if item[2] != '': # 操作类型转换为整数 item[2] = int(item[2]) item[3] = str(item[3]) # 科目转换为字符串类型 ``` 4. 可以按照需要对数据进行进一步处理,如按照题号、时间等进行排序、筛选等操作。 完整的Python代码如下: ``` import datetime data = '''1#2021-05-18 14:31:55##初级会计实务,2#2021-05-18 14:31:57#12#初级会计实务,2#2021-05-18 14:32:08##初级会计实务,3#2021-05-18 14:32:09#12#初级会计实务,4#2021-05-18 14:32:34#12#初级会计实务,4#2021-05-18 14:32:45##初级会计实务,5#2021-05-18 14:32:46#12#初级会计实务,5#2021-05-18 14:32:57##初级会计实务,6#2021-05-18 14:33:00#12#初级会计实务,7#2021-05-18 14:33:44#12#初级会计实务,7#2021-05-18 14:34:42##初级会计实务,8#2021-05-18 14:34:43#12''' # 将数据分割成每个数据项 data_items = data.split(',') # 对于每个数据项,将其按#分割成四个小项,并存储到一个列表中 data_list = [] for item in data_items: item_list = item.split('#') data_list.append(item_list) # 对于每个小项,进行相应的类型转换 for item in data_list: item[0] = int(item[0]) # 题号转换为整数 item[1] = datetime.datetime.strptime(item[1], '%Y-%m-%d %H:%M:%S') # 时间转换为datetime类型 if item[2] != '': # 操作类型转换为整数 item[2] = int(item[2]) item[3] = str(item[3]) # 科目转换为字符串类型 print(data_list) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值