Java 将十六进制表示法转换为纬度的小时和分钟

Java 将十六进制表示法转换为纬度的小时和分钟,java,hex,Java,Hex,鉴于: 0x12E7表示48°39' 0x3026表示123°26' 将这些纬度的表示转换为两个变量的最有效方法是什么: 小时数 会议记录 其中第一个例子是: 小时=48 分钟=39 第二个例子: 小时=123 分钟=26 编辑 如果您有一个字符串值,则纬度是一个int: int i = Integer.parseInt("12E7", 16); int hours = i / 100; int minutes = i % 100; 或者您可以直接使用0x…格式: int i

鉴于:

  • 0x12E7
    表示48°39'
  • 0x3026
    表示123°26'
将这些纬度的表示转换为两个变量的最有效方法是什么:

  • 小时数
  • 会议记录
其中第一个例子是:

  • 小时=48
  • 分钟=39
第二个例子:

  • 小时=123
  • 分钟=26
编辑


如果您有一个
字符串
值,则纬度是一个
int

int i = Integer.parseInt("12E7", 16);
int hours = i / 100;
int minutes = i % 100;
或者您可以直接使用
0x…
格式:

int i = 0x12E7;
int hours = i / 100;
int minutes = i % 100;

如果从
Integer#parseInt()
中的字符串中删除
0x
,它将按预期工作。那么,初始表示形式是字符串还是整数?
hours = 0x12E7 / 100;
minutes = 0x12E7 % 100;
int l = 0x12E7;
int h = l / 100;
int m = l % 100;
System.out.printf("%d°%d'", h, m); // 48°39'