day02-变量,数据类型,运算符

本文介绍了Java中的变量命名规则、数据类型及其转换,并详细讲解了运算符,包括按位取反和移位运算。通过一个实际的加密算法示例,展示了如何对四位整数进行加密操作,加深了对数据处理的理解。同时,分享了两种快速交换两个数的方法。
摘要由CSDN通过智能技术生成

变量,数据类型,运算符

1.变量

变量命名规则熟记;
要点:变量表示数据在内存中内存地址,在使用变量时要先声明和赋值。

2.数据类型

数据类型字节大小:
byte(1字节)<short=char(2字节)<int=float(4字节)<long=double(8字节)
自动类型转换:
在数据类型兼容的情况下, 小转大就是自动类型转换。
强制类型转换:
在数据类型兼容的情况下, 大转小就是强制类型转换,显示性转换需要添加被转类型的语法。
数据类型提升:

  • 表达式中有double,结果double
  • ​ 有float,结果float
  • ​ 有long,结果long
  • ​ 有int,结果int
  • ​ 有char、byte、short,结果为int
    (1.在Java中,任何一个整数默认都当做是int类型;任何一个小数默认都是double类型;2.任何类型和String拼接时为String类型)

3.运算符

按位取反:将每一位上的数字取反即当前数加一取反。
在这里插入图片描述

**移位运算符:用左移运算符<<可以快速求2的幂次方或某个数的一倍;用右移运算符>>可以求一个数的一半,右移运算符运算正数是补0,运算负数时补1;无符号右移时正负数都补0,并使用32位运算。

今日练习

某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上3然后除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。输入四位号码,求加密后的号码为多少?

import java.util.Scanner;
public class Demo03{
  public static void main(String[] args){
	Scanner input =new Scanner(System.in);
	System.out.println("请输入初始四位整数密码:");
	int mm=input.nextInt();
	int one=(mm/1000+3)%10;
	int two=(mm%1000/100+3)%10;
	int three=(mm%100/10+3)%10;
	int four=(mm%10+3)%10;
	System.out.println("加密后的密码为"+four+three+two+one);
  }
}

小收获:
两数交换1:a=a+b; b=a-b; a=a-b;
两数交换2:a=a^b; b=a^b; a=a^b;(程序中运行更快)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值