Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
- package converter;
- import java.util.ArrayList;
- import java.util.Arrays;
- import java.util.Iterator;
- import java.util.List;
- import java.util.StringTokenizer;
- /**
- *
- * @author Acer
- */
- public final class Utilities {
- private Utilities(){
- }
- @Checked
- public static boolean isDecimalDigit(char digit){
- return digit >= '0' && digit <= '9';
- }
- @Checked
- public static boolean isBinaryDigit(char digit){
- return digit == '0' || digit == '1';
- }
- @Checked
- public static boolean isOctalDigit(char digit){
- return digit >= '0' && digit <= '7';
- }
- @Checked
- public static boolean isHexadecimalDigit(char digit){
- return isDecimalDigit(digit) || ((digit >= 'a' && digit <= 'f') || (digit >= 'A' && digit <= 'F'));
- }
- @Checked
- public static int toDecimalValue(char hex){
- if(isDecimalDigit(hex))
- return Character.digit(hex, 10);
- switch(hex){
- case 'A':
- case 'a':
- return 10;
- case 'B':
- case 'b':
- return 11;
- case 'C':
- case 'c':
- return 12;
- case 'D':
- case 'd':
- return 13;
- case 'E':
- case 'e':
- return 14;
- case 'F':
- case 'f':
- return 15;
- default:
- return -1;
- }
- }
- @Checked
- public static char toHexadecimalDigit(int value){
- if(value >= 0 && value <= 9)
- return Character.forDigit(value, 10);
- switch(value){
- case 10:
- return 'A';
- case 11:
- return 'B';
- case 12:
- return 'C';
- case 13:
- return 'D';
- case 14:
- return 'E';
- case 15:
- return 'F';
- default:
- return '\0';
- }
- }
- @Checked
- public static String[] split(String str, int splitsCount, int charsCount){
- if(splitsCount <= 0 || charsCount <= 0)
- return new String[]{str};
- StringBuilder builder = new StringBuilder();
- int count = 0;
- for(int i = 0;i < str.length();i++){
- if((i % charsCount) == 0 && i != 0){
- builder.append("-");
- count++;
- }
- if(count == splitsCount){
- builder.append(str.substring(i));
- break;
- }
- builder.append(str.charAt(i));
- }
- StringTokenizer tokenizer = new StringTokenizer(builder.toString(), "-");
- ArrayList<String> groups = new ArrayList<>();
- while(tokenizer.hasMoreTokens())
- groups.add(tokenizer.nextToken());
- return groups.toArray(new String[]{});
- }
- @Checked
- public static String reverse(String str){
- String temp = "";
- for(int i = str.length()-1;i >= 0;i--)
- temp += str.charAt(i);
- return temp;
- }
- @Checked
- public static Iterator<Character> stringIterator(String str){
- Character[] data = new Character[str.length()];
- for(int i = 0;i < str.length();i++)
- data[i] = str.charAt(i);
- return Arrays.asList(data).iterator();
- }
- @Checked
- public static StringBuilder[] stringBuildersArrayFor(String[] array){
- StringBuilder[] builders = new StringBuilder[array.length];
- for(int i = 0;i < array.length;i++)
- builders[i] = new StringBuilder(array[i]);
- return builders;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement