A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

wangnana

初级黑马

  • 黑马币:26

  • 帖子:9

  • 精华:0

© wangnana 初级黑马   /  2018-7-20 08:51  /  587 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

类型转换:自动转换和强制转换
  1.自动转换 ,范围从小到大
  2.强制转换,范围从大到小,可能会发生数据溢出
    * 比较而言,自动转换是Java自动执行的,而强制转换需要我们手动执行。
数据类型有两大类:基本类型和引用类型。
范围从小到大:byte->short->char->int->long->float->double
ASCII码表:
Unicode码表:万国码,开头0~127部分和ASCII码表完全一样,但是从128开始包含有更多字符。
**********
*  48-0  *
*  65-A  *
*  97-a  *
**********
********************************
//水仙花               
int num = 371;
//获取百位数:
int b = num/100;
//获取十位数:
int s = num%100/10; 或者 int s = num/10%10
//获取个位数:
int g = num%10;
int sum = b*b*b+s*s*s+g*g*g;
System.out.println(sum);
*************************************
运算符包括:1.  算数运算符;
2.  赋值运算符;
3. 比较运算符;
4. 逻辑运算符;
5. 三元运算符。
一、算数运算符:(+ 加法运算/字符串连接运算)、(- 减法运算)、(* 乘法运算)、(/ 除法运算)、(% 取模,取余数)、(++ 自增运算)、(-- 自减运算)
     * 任何数据类型和字符串进行连接的时候,结果都会变成字符串。”a”+”b”结果是ab
* 只有变量能使用自增自减运算符。
   * 不同类型数据进行运算,得到的结果会是范围大的类型
   * 整数使用以上运算符计算,无论怎样都不会得到小数
二、赋值运算符:
1. 赋值运算符;(将右侧的数据交给左侧的变量)
   就是一个等号“=”,个等号是赋值,两个连着的等号“==”是相等。
2. 复合赋值运算符:
+=  a+=3  相当于 a = a + 3;
-=  b-=4   相当于 b = b + 4;
*=  c*=5  相当于 c = c + 5;
/=  d/=6  相当于 d = d + 6;
%=  e%=7  相当于 e = e%7;
* 复合赋值运算符会进行一个隐含的强制类型转换
* 只有变量才能使用赋值运算符,常量不能进行赋值。
三、比较运算符
* 比较运算符是两个数据间的比较,运算结果都是布尔值truefalse
* 如果进行多次判断,不能连着写
四、逻辑运算符
* 逻辑运算符是用来连接两个布尔类型结果的运算符,运算结果都是布尔值truefalse
   (短路与) 与  && , 全都是true,才是true,否则就是false;  左边是false,右边就不执行了
   (短路或) 或  || ,  至少有一个是true,就是true,否则就是false;  左边是true,右边就不执行了
     非  ! , 取反, 本来是true,现在是false;本来是false,现在是true
* 一元运算符:只需要一个数据就可以进行操作的运算符
* 二元运算符: 需要两个数据才可以进行操作的运算符
* 三元运算符:需要三个数据才可以进行操作的运算符
     格式:数据类型 变量名称 = 条件判断 ?表达式A: 表达式B
       必须同时保证表达式A和表达式B都符合左侧数据类型的要求
    三元运算符的结果必须被使用
# 方法:
  * 定义的格式:public static void 方法名称(参数类型 参数名){
                方法体
            }
    方法体:大括号当中可以包含任意条语句。
注意事项:1.方法定义的顺序无所谓
         2.方法的定义不能产生嵌套包含关系
         3.方法必须被调用才能执行
  * 调用: 在main方法中调用   方法名称(参数名);
# 编译器的优化
   对于byte/short/char三种类型来说,如果右侧数据没有超过范围,那么javac编译器将会自动隐含的补上一个(byte)(short)的强制转换
  常量优化:右边赋值的数据都是常量,且不超过数据类型的范围。
题目:有n个人围成一圈,顺序排位,从第一个人开始报数(从1~3报数),凡报到3的人退出圈子,最后留下的人是原来第几号的那位。
思路:从键盘录入一个数字,作为开始的人数,用到Scanner报到3的人退出圈子,所以要定义一个布尔型数组判断某人是否还在圈内,
boolean[] isIn = new boolean[n];同时还需定义报数计数器Number和圈里的人数的计数器Countter。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马