zoukankan      html  css  js  c++  java
  • 字符串动手动脑实践及凯撒密码

    1、运行以下代码:

     
    public class StringEquals {
    
        
    /**
         * @param args the command line arguments
         */
        
        public static void main(String[] args) {
            
            String s1=new String("Hello");
            
            String s2=new String("Hello");
    
            
            System.out.println(s1==s2);
            
            System.out.println(s1.equals(s2));
    
            
            String s3="Hello";
            
            String s4="Hello";
    
              
            System.out.println(s3==s4);
            
            System.out.println(s3.equals(s4));
            
        
        }
    
    
    }

    结果截图:

    总结:    

         1、java中equals和==的区别 值类型是存储在内存中的堆栈(简称栈),而引用类型的变量在栈中仅仅是存储引用类型变量的地址,而其本身则存储在堆中。
      2、==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。
      3、equals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。
      4、==比较的是2个对象的地址,而equals比较的是2个对象的内容,显然,当equals为true时,==不一定为true。

    2、String类的Length()charAt()、 getChars()replace()、 toUpperCase()、 toLowerCase()trim()toCharArray()使用说明

     1.Length()

        计算字符串长度。

     2.charAt()

       获取指定位置的字符

     3.getChars()

     获取从指定位置起的子串复制到字符数组中,比如 s1.getChars( 0, 5, charArray, 0 );四个参数的含义:

         1)被拷贝字符在字串中的起始位置。

         2)被拷贝的最后一个字符在字串中的下标再加1

         3)目标字符数组。

         4)拷贝的字符放在字符数组中的起始下标。

     4.replace()

        子串替换,replaceoldstringnewstring);用新字符串代替旧字符串。

     5.toUpperCase()toLowerCase()

        大小写转换,比如str.toUpperCase();str中所有小写转换成大写。

     6.trim()

        去除头尾空格,比如str=” abc ”,str.trim();abc头尾的空格去掉。

     7.toCharArray()将字符串对象转换为字符数组,str.toCharArray();str转换成char数组。

    3、凯撒密码

    import java.io.*;  
    import java.util.Scanner;   
    public class KaiSa1{   
         public static void main(String[] args){   
             System.out.print("请输入密钥:");   
             Scanner s=new Scanner(System.in);   
             int a=s.nextInt();
             C(a);  
         }    
    public static void C(int n){   
         try{      
            char b[];        
            BufferedReader br2=new BufferedReader(new InputStreamReader(System.in));          
            System.out.println("请输入一段明文:");         
            String str2=br2.readLine();         
            b=str2.toCharArray();            
            System.out.println("密文为:");         
            int k=n;         
            for(int i=0;i<str2.length();i++)
            {
                char ch=(char)((b[i]-'a'+k)%26+'a');
                System.out.println(ch);
            }
                System.out.println("密匙K="+k);  
            }
            catch(IOException e){
                System.out.println(e.getMessage());   
            }
      }
    }

    验证截图:

  • 相关阅读:
    JMS(面向消息中间件)
    ActiveMQ消息中间件知识汇总
    linux安装mysql常见命令
    结果集耗尽时,检查是否关闭结果集时常用sql
    Spring注解驱动开发之事务概念
    nginx 基础
    HTTP原理
    MYSQL----cmake 数据库出错
    php安装Phalcon模块
    docker报错 Failed to start Docker Application Container Engine.
  • 原文地址:https://www.cnblogs.com/lk0823/p/4909186.html
Copyright © 2011-2022 走看看