Java机试准备

一般结构:   import java.util.Scanner;

public class Main{

public static void main(String[] args){

System.out.println( );

}

}

输入流:

字符串: Scanner input = new Scanner(System.in);

while(input.hasNextLine()){

String str = input.nextLine();

}

整数:   Scanner input = new Scanner(System.in);

while(input.hasNext()){

String str = input.nextInt();

}

TreeMap使用:红黑树实现,键值对,默认按键值key升序排列

定义:   TreeMap<Integer,Integer>map = new TreeMap<Integer,Integer>();

判断是否包含指定的键名key: if(map.containsKey(key))

获取key值所对应的value:    map.get(key);

往map中放入键值对:        map.put(key,value);

获取所有key值到set集合中:  map.keySet();

遍历输出map中键值对:   for (Integer key : map.keySet()) {

System.out.println(key + " " + map.get(key));

}

TreeSet的使用:基于treemap,单元素,元素按升序排列

定义:   TreeSet<Integer> set = new TreeSet<Integer>();

for(int i=0;i<num;i++){

int cur = s.nextInt();

放入treeset : set.add(cur);

}

遍历:    for(Integer i : set){

System.out.println(i);

}

ArrayList动态数组:

定义:      ArrayList<String> set = new ArrayList<String>();

for(int i=0;i<num;i++) {

String  str = s.nextLine();

字符串加入数组:set.add(str);

}

按升序排序:    Collections.sort(set);

遍历输出字符串数组:  for (String str : set) {

System.out.println(str);

}

定义数组:  int []arr=new int[128];

数组求长度: int len =arr.length;

字符串的长度:int len =str.length();

检索字符串中某字符的位置:

从前往后:str.IndexOf(" ");从前往后检索空格,返回空格的位置

从后往前:str.lastIndexOf(" ");从后往前检索空格,返回空格位置

检索字符串中的字符:str.charAt(i);返回字符

字符串拆分为字符串数组:String strArr[]= str.split(" ");(以空格拆分字符串为字符串数组)

字符串转换成大写:str.toUpperCase();

字符串转换成小写:str.toLowerCase();

整数转换为二进制:String str = Integer.toBinaryString(n);(转换为01字符串形式)

字符串转换为整数:int i= Integer.parseInt(str,);  int i= Integer.parseInt(str,16)(字符串为16进制的,转换为十进制整数)

整数转换为字符串:String s=String.valueOf(i);  string s=Integer.toString(i);

字符转换为整数:str.charAt(i)-'0';或者str.charAt(i)-48

字符转为整数:int num = Integer.valueOf(ch[i]);

类型强制转换: int n=(int)num;(num为double型的)

将字符串转为字符数组:char ch[ ]=str.toCharArray();

截取字符串:str.substring(0,8):截取位置0到位置7的子串

str.substring(8):截取从位置8到末尾的子串

0-9:48-57

A-Z:65-90

a-z:97-122

注:整数过大转换为字符串处理!

java机试要点的更多相关文章

  1. 华为JAVA机试流程

    1.JAVA机试流程:①打开IE浏览器,输入机试系统IP地址(以当天告知的地址为准):②输入姓名.手机,选择“C/C++”或“JAVA”,登录:③登录后显示题目,阅读题目并点击页面最下方的“下载框架文 ...

  2. Java机试题目_怎样截取字符串

    面试题1  怎样截取字符串 考题题干 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串.但是要保证汉字不被截半个,如"我ABC"4,应该截为" ...

  3. 华为2013年西安java机试题目:如何过滤掉数组中的非法字符。

    这道题目为记忆版本: 题目2描述: 编写一个算法,过滤掉数组中的非法字符,最终只剩下正式字符. 示例:输入数组:“!¥@&HuaWei*&%123” 调用函数后的输出结果,数组:“Hu ...

  4. Java机试题目

    1.生成一个随机四位数,每位数字不重复. package com.cloud.stagging.lhcloudzuul; import java.util.Random; /** * 1.生成一个随机 ...

  5. 华为 2015 机试 输出:数字后面的连续出现的(2个或多个)相同字符(数字或者字符),删去一个,非数字后面的不要删除,例如,对应输出为:33aabb55pin。

    package 华为机试; //C++ 输入:由数字和字母组成的字符串,例如:333aaabb55ppin //输出:数字后面的连续出现的(2个或多个)相同字符(数字或者字符),删去一个,非数字后面的 ...

  6. 华为OJ机试训练(一)

    题目1 -- 通过输入英文句子.将每一个单词反过来,标点符号顺序不变.非26个字母且非标点符号的情况就可以标识单词结束. 标点符号包含,.!? 比如输入:Hello, I need an apple. ...

  7. web机试

    测试: <html><style> </style><title>Demo</title> <body><div > ...

  8. 华为机试ACM(字符组合问题)

    今晚做了华为的机试,3道ACM题,最后一道是实现从M个不同字符中任取N个字符的所有组合. eg: input:ABC 2 output:AB AC BC 第一个输入为字符串,第二个输入为组合的字符个数 ...

  9. 北邮14&18年软院机试【参考】答案

    2014 Problem A. 奇偶求和 题目描述: 给定N个数,分别求出这N个数中奇数的和以及偶数的和. 输入格式 第一行为测试数据的组数T(1<=T<=50).请注意,任意两组测试数据 ...

随机推荐

  1. mybatis动态sql

    MyBatis 采用功能强大的基于 OGNL 的表达式来消除其他元素.  if choose(when,otherwise) trim(where,set) foreach 例子(2): &l ...

  2. php面试题2

    php面试题及答案(原创)收藏 基础题: 1.表单中 get与post提交方法的区别? 答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据,可以通过表单提交大量信息. 2 ...

  3. Google之Chromium浏览器源码学习——base公共通用库(二)

    上次提到Chromium浏览器中base公共通用库中的内存分配器allocator,其中用到了三方库tcmalloc.jemalloc:对于这两个内存分配器,个人建议,对于内存,最好是自己维护内存池: ...

  4. 你不知道的parseInt

      首先,请允许我抄袭一段你知道的parseInt   以下节选自parseInt - JavaScript | MDN 实际上你连这些基础都没掌握 概述 parseInt() 函数将给定的字符串以指 ...

  5. HDU 2045 不容易系列之(3)―― LELE的RPG难题(递推)

    题意:有排成一行的n个方格,用红(Red).粉(Pink).绿(Green)三色涂每个格子,每格涂一色,要求任何相邻的方格不能同色,且首尾两格也不同色.求全部的满足要求的涂法. 题解:本来当n=1时, ...

  6. [工作中的设计模式]责任链模式chain

    一.模式解析 责任链模式是一种对象的行为模式.在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链.请求在这个链上传递,直到链上的某一个对象决定处理此请求.发出这个请求的客户端并不知 ...

  7. 分布式缓存技术redis学习系列(三)——redis高级应用(主从、事务与锁、持久化)

    上文<详细讲解redis数据结构(内存模型)以及常用命令>介绍了redis的数据类型以及常用命令,本文我们来学习下redis的一些高级特性. 安全性设置 设置客户端操作秘密 redis安装 ...

  8. 未能添加对***.dll的引用问题

    在机器A上运行.编译成功的程序,在B上不能正确被编译,并且添加r如 knbook.dll 时候提示如下: 未能添加对"knbook.dll"引用,请确保此文件可以访问并且是一个有效 ...

  9. ACM: NBUT 1105 多连块拼图 - 水题 - 模拟

    NBUT 1105  多连块拼图 Time Limit:1000MS     Memory Limit:65535KB     64bit IO Format:  Practice  Appoint ...

  10. Java实现验证码制作之一Kaptcha验证码

    Kaptcha验证码 是google提供的验证码插件,使用起来相对简单,设置的干扰线以及字体扭曲不易让其他人读取破解. 这里我们需要 导入一个 kaptcha-2.3.jar  下载地址:http:/ ...