【问题标题】:How can I have my values print under the specific column of ASCII(char), ASCII(int), and Hex如何在 ASCII(char)、ASCII(int) 和 Hex 的特定列下打印我的值
【发布时间】:2017-06-25 16:33:24
【问题描述】:

代码正在显示和转换我需要的值,但它没有显示在正确的列下。它们都在我输入的内容下方的初始列下打印出来。我输入 K1 并正确打印出 ASCII(char), ASCII(int)Hex 我只是不知道如何正确对齐它们。我的图像显示了输出示例。

/****************************************************************************
GMUnit3Ch12.java
Melissa Goslin
 *
This program will get input for a string, then output the initial character,
ASCII values of the characters and number, and hex values of each character. 
 ****************************************************************************/
import java.util.Scanner;      // import scanner

public class GMUnit3Ch12 {                      

    public static void main(String[] args) {     // main method

        Scanner stdIn = new Scanner(System.in);  // scanner

        String input;  // user input
        char output;   // variable to print out in initial column
        String values1; // variable used to convert
        String hexString; // converting to hex

        System.out.println("Please enter a string of any length: ");   // ask input from user
        input = stdIn.next();

        System.out.println("\t"); //space to separate
        System.out.println("Initial\tASCII<char>\tASCII<int>\tHex"); // headings 

        for(int i = 0; i < input.length(); i++)
        {
            output = input.charAt(i);
            System.out.println(output);          // prints out input separately in initial column

            if(Character.isDigit(output))    // if/else statement to see if value is a digit
            {
                System.out.println((int)output); // prints out ASCII (int)  
            }
            else
            {
                System.out.println((int)output);  // prints out ASCII (char)
            }

            hexString = Integer.toHexString((int)output);   // converts to hex
            System.out.print(hexString.toUpperCase());     //Prints Hex String in upper case
            System.out.println();
        }

        System.out.println("\nThank you for playing!"); // thanks for playing!
    } // end main
} // end class GMUnit3Ch12[Below is an image of my output][1]

【问题讨论】:

    标签: java alignment


    【解决方案1】:

    您可以简单地使用System.out.print 和一些制表符'\t' 如下 -

                if(Character.isDigit(output))    // if/else statement to see if value is a digit
                {
    
                    System.out.print("\t\t"+(int)output); // prints out ASCII (int)
    
                }
                else
                {
                    System.out.print("\t\t"+(int)output);  // prints out ASCII (char)
                }
    
                hexString = Integer.toHexString((int)output);   // converts to hex
                System.out.print("\t\t"+hexString.toUpperCase());     //Prints Hex String in upper case
                System.out.println();
                }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-05
      • 1970-01-01
      • 2019-10-05
      • 1970-01-01
      相关资源
      最近更新 更多