zoukankan      html  css  js  c++  java
  • 20169202 2016-2017-2《移动平台》第九周实验总结

    命令行参数

    实验要求

    提交测试结果截图,课下把代码上传到码云。
    求命令行传入整数参数的和。
    public class TestArgs {
    	public static void main(String [] args) {
    
    		int sum = 0;
    
    		// 参考Integer类中的方法把字符串转为整数
    		// 补充代码求命令行参数的args中整数数据的和
    		
    		
        // 打印 
    		System.out.println(sum);
    	}
    }
    

    • java中String字符串转化为数字:

      转换为浮点型:

      使用Double或者Float的parseDouble或者parseFloat方法进行转换

      String s = "123.456 "; //要确保字符串为一个数值,否则会出异常
      double d = Double.parseDouble(s);
      float f = Float.parseFloat(s);

      转换为整型:

      使用```Integer```的```parseInt```方法进行转换。
      

      int i = Integer.parseInt([String]);//[String]待转换的字符串

    递归方式

    实验要求

    public class TestArgs {
    	public static void main(String [] args) {
    
    		int sum = 0;
    
    		// 参考Integer类中的方法把字符串转为整数
    		// 补充代码以递归的方式求命令行参数的args中整数数据的和
    		
    		
        // 打印 
    		System.out.println(sum);
    	}
            
            //递归函数
            public static void  clSum(int [] arr) {
               
            }
    }
    
    • 递归实现可以用阶乘的原理理解或者用组合数学的递推关系来理解。
      • 阶乘理解:f(n)=n!;
        (n+1)!=(n+1)n!=(n+1)f(n);
      • 递推关系:
        Hanoi问题:这是个组合数学中的著名问题.N个圆盘依其半径大小,从下而上套在A柱上,如下图示.每次只允许取一个移到柱B或C上,而且不允许大盘放在小盘上方.若要 求把柱A上的n个盘移到C柱上请设计一种方法来,并估计要移动几个盘次.现在只有A、B、C三根柱子可用.
        算法分析:令h(n)表示n个圆盘所需要的转移盘次。根据算法先把前面n-1个盘子转移到B上;然后把第n个盘子转到C上;最后再一次将B上的n-1个盘子转移到C上。
        n=2时,算法是对的,因此,n=3是算法是对的。以此类推。于是有: h(n)=2h(n-1)+1,h(1)=1

    实验三 敏捷开发与XP实践

    凯撒密码的加密算法极其简单。其加密过程如下:

    在这里,我们做此约定:明文记为m,密文记为c,加密变换记为E(k1,m)(其中k1为密钥),解密变换记为D(k2,m)(k2为解密密钥)(在这里k1=k2,不妨记为k)。凯撒密码的加密过程可记为如下一个变换:

    c≡m+k mod n (其中n为基本字符个数)

    同样,解密过程可表示为:
    m≡c+k mod n (其中n为基本字符个数)
    该程序既可用于加密又可用于解密。
    只要执行:明文(要加密的字符串) 密钥(移动的位数)即可加密。
    在密钥前面加上负号,将运行
    明文(要加密的字符串) -密钥(移动的位数)
    即可解密。
    如果密钥大于26,程序中移位前会和26取模而将其调整到26以下。只有知道密钥才能得到原来的密文。
    因此运行:Hello World! 30
    同样将输出“Lipps Asvph!”。

    问题及解决

    按照博客中的密码运行提示出现错误,让我想起,args的练习,找到了解决办法

    • 1命令行
      在java程序所在文件夹的地址栏中输入cmd
      先编译javac Test.Java
      再运行Java Test arg1 arg2 arg3 ……(参数之间用空格隔开)
    • 2 IDEA
      点击Run下的Edit Configurations
      配置Configuration分页中的Program arguments选项,就可以在idea中传入参数,点击OK,然后从新运行。
    • 小窍门:如在工作时经常要写System.out.println(); 这个在idea里已经预设好了,直接输入sout 然后按tab键就可以了,你也可以试试输入soutm,soutp加tab键

    实验参考

    http://www.cnblogs.com/rocedu/p/4795776.html
    http://www.cnblogs.com/rocedu/p/4795776.html
    http://www.cnblogs.com/rocedu/p/6683948.html
    http://blog.csdn.net/sky19891212/article/details/43566493

  • 相关阅读:
    docker实例之mysql的使用
    使用Dockerfile创建ssh服务的镜像02
    添加ssh服务构建新镜像-docker commit 方式01
    Keepalived
    ubuntu网卡配置
    升级openssl
    源码安装nginx env
    dockerfile
    shell字符截取
    MYSQL导入/迁移后事件不执行
  • 原文地址:https://www.cnblogs.com/zhaohui801/p/6775878.html
Copyright © 2011-2022 走看看