登录不老阁

 
注册成功

二呆

diamond@tongleer.com

岂能尽如人意,但求无愧我心。

【Android】学习札记第1章之运算符和流程控制

2017-6-11 二呆 Android 489观看

运算符包括算数、比较、逻辑、位、三项、转型和赋值运算符等,它们将会用与各个方法中;流程控制语句包含if else、switch case、for、while、do while等,其中switch case 要比if else运算速度快,for循环比较常用。

工具/原料

  • JDK、eclipse、android SDK、ADT

一、基本数据类型运算符

  1. (1)算数运算符

    + - * / %

    ++、-- 自增自减运算:

    int a=10;System.out.print(a++);//打印的是a的原值10,a自增变成11

    int a=10;System.out.print(++a);//打印的是a的新值11,a自增变成11

    (2)比较运算符

    > >= < <= == !=

    (3)逻辑运算符

    && 逻辑与:两侧同时为真,结果为真。短路与,左侧是假,右侧被忽略。

    || 逻辑或:只要有一侧为真,结果为真。短路或,左侧是真,右侧被忽略。

    ! 非:非真即假,非假即真。

    (4)位运算符

    & 位与:两位同时为1,结果为1。

    | 位或:两位同时为0,结果是0。

    ^ 异或:相同是0,不同是1。跟同一个值异或两次,可以得到原值。如:1^128^128==1。

    ~ 求反:0变1,1变0。

    >> 带符号向右移位:符号位是0,左侧补0;符号位是1,左侧补1。>>1相当于/2,<<1相当于*2

    >>> 不带符号向右移位:左侧补0。

    << 向左移位:右侧补0。

    (5)三项运算

    a?b:c->若a是真,则执行b;若a是假,则执行c。

    (6)转型运算

    类型强行转换->如:(int)

    (7)赋值运算

    int a=3+4;

    还可以和算术运算符一起使用:+=、-=、*=、/=(这些会自动转型,如:byte a=2;a+=1;相当于a=(byte)(a+1))

  2. 练习:
    ①int 整数强转拆分成4个byte值
    ②使用三项运算求三个数的最大值

二、变量和方法

  1. 局部变量:

    定义在局部代码块中的变量,局部变量必须手动初始化(第一次赋值,分配内存空间并完成赋值),否则不能使用。

    作用域(作用范围):只在定义的大括号内有效,执行完毕在内存中清理掉,在作用域内不能重复定义。

  2. 成员变量:

    定义在类中的变量

  3. 方法:

    命名的代码块:由返回值类型、方法名、方法体组成,创建断点后进入debug界面按F11可以进行分行调试。

    参数:f(int x){x++;}

    返回值:

    如果有返回值,就需要定义返回值类型;如:int f(){return x;}

    如果没有返回值,void就表示没有返回值。如:void f(){}

三、流程控制语句

  1.  流程控制语句的种类:

    (1)if-else if-else

    (2)switch case default:只能判断byte,short,char,int,enum。

    当满足一个case,就从这个case开始无条件执行所有case直到结束,或者遇到break结束。

    (3)for

    (4)while

    (5)do while

  2.  练习:
    ①符号函数

    检查用户输入的整数:是正数,返回1;是负数,返回-1;是0,返回0。

    ②计算个人所得税

    (公式:个人所得税=(工资-3500)*税率-速算扣除数),扣税规律如下:

    <1500     0           0

    1500     3%           0

    4500     10%       105

    9000     20%       555

    35000     25%     1005

    55000     30%     2755

    80000     35%      5505

    >80000   45%     13505

    ③输入百分制分数,显示ABCDE五档分值。

    (将分数除以10,用switch判断输入的分数等于0-10来判断等级)

    A [90,100]

    B [80,90)

    C [60,80)

    D [40,60)

    E [0,40)

注意事项

  • 位运算往往不容易懂,以上int和byte互相转换的练习可以很好的掌握位运算,理解位运算要结合0和1的二进制来辅助理解。
  • 流程控制需要良好的逻辑能力,而逻辑能力又不是马上能练出来的,所以不断的敲代码,提高对代码的敏感,用代码的语言能理解了,就可以锻炼出逻辑能力了。

« 【Android】学习札记第1章之流程控制循环语句 | 【Android】学习札记第1章之基本数据类型»

  • 觉得很赞 (0)
  • 打赏
  • X
    打赏
    • 微信
    • QQ红包
    • 支付宝


    用微信扫一扫

    您的鼓励将是站长及作者前行的动力,谢谢打赏
    (若二维码有误可举报)

发表评论:

快乐贰呆的关注更多 >

小草窝博客

博主是一名天朝的学生,喜欢折腾各种奇怪的语言,喜欢探索未知的事情

图床

微博图床

搜索

标签

Genymotion Button HTML 腾讯视频 Win10 火腿肠意面 MIUI 主题编辑器 Android emlog pjax EventBus AndroidStudio 快捷键 倒计时 工具类 eclipse javascript 励志语录 自定义Dialog Demo java 热伤风 redis RabbitMQ ZeroMQ ActiveMQ Kafka Jafka php 鸡蛋饼 直播 继承 面向对象 工厂模式 AutoCompleteTextView GridView RadioButton ToggleButton Android开发入门 EditText CheckBoxes 控件 TimePicker AnalogClock DigitalClock ProgressBar SeekBar RatingBar UI控件 Spinner ScrollView Adapter 单元测试 Dialog 自定义对话框 Android项目 布局 Android视频 Java4Android Android开发教程 学习札记 基本数据类型 运算符和流程控制 流程控制循环语句 数组 数组二 二维数组 安卓基础 安卓监听器 表格布局 帧布局 网格布局 Android异常 AndroidIO XML XML解析 用户登录 数据存储 SQLite内部数据存储 Unity3D教程 Linux subversionSVN TortoiseSVN ViewPager Fragment 预加载 Android实战开发 唯一识别码 锁屏 Activity CheckBox ListView 增删改查 图片回收处理 内存溢出 仿2列商品列表 AndroidNDK eclipse插件 jni开发 jni调用 so文件 Androidmk配置 Flash 绘制图形 苹果 图标 变形工具 滤镜 Flash特效 简单薄餐 Flash滤镜 Flash动画 Android开发 天气预报 醋溜白菜 香菇烩豆腐 微波豆腐蒸蛋 速成凉拌豆腐 杜子建 穷根 男装搭配 黄帝内经 大蒜洋葱粥 情商密码 中华药粥 交际红人 小白菜萝卜粥 每日一笑 完美国际 故梦 一卷情长 Ukulele 白熊音乐 零基础 指弹 教程 白桦树娃娃 新加坡 网红美食 海南鸡饭

公众号

同乐儿

链接更多 >