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. Ubuntu 配置有线网 IP

    方法1: 最直接的办法,就是在右上端的网络那里点设置,然后add,选以太网,然后IPV4里,手动设置 -- add IP -- 填入IP地址.网关.子网掩码,OK. 方法2,3见网上教程: Ubunt ...

  2. .NET开发者如何愉快的进行微信公众号开发

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:这篇文章只是一个如何提高开发效率的简单指导和记录,不会涉及具体的微信公众号开发内容. ...

  3. Android 框架练成 教你打造高效的图片加载框架(转)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/41874561,本文出自:[张鸿洋的博客] 1.概述 优秀的图片加载框架不要太多, ...

  4. zoj 3820(2014牡丹江现场赛B题)

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5374 思路:题目的意思是求树上的两点,使得树上其余的点到其中一个点的 ...

  5. Java基础知识点3:集合类

    集合类是Java编程中经常会用到的一类常用类库,在这里将会对整个集合类进行介绍: Collection接口: Collection接口是所有集合类的根接口,代表了所有含有多个元素的集合,无论这个集合中 ...

  6. python 函数的参数定义及调用

    参数定义:1. 位置参数:    这是熟悉的标准化参数,位置参数必须在调用函数中定义的准确顺序来传递,在没有默认参数的情况下,传入参数    的精确数目必须和声明的数目一致. def foo(who, ...

  7. iOS 设置1像素的UIView线

    如果是代码实现,直接 在CGRectMake里把对应的参数设置为: 1.0/[UIScreenmainScreen].scale 即可.         如果是用xib实现,就需要将对应的限制拖一个I ...

  8. CodeForces 515C. Drazil and Factorial

    C. Drazil and Factorial time limit per test 2 seconds memory limit per test 256 megabytes input stan ...

  9. mac系统下mysql开机启动总是3307

    修改了mysql的my.cnf可还是不行,启动后就是3307,必须关掉再启动. 觉得可能是mac系统在哪里写死了开机启动项. http://queforum.com/mysql/1012987-mys ...

  10. docker 配置文件引发的问题

    好久没有配置 vmware / harbor 了,突然间来了兴趣,结果让我失望了,登陆反复的被refused; 这个是配置文件地址:https://github.com/vmware/harbor/b ...