如何在 Java 中转换字符到 ASCII 数值

本文将通过实例发现在 Java 中把一个给定字符转换成 ASCII 数值的最简单有效的方法。

在 Java 中将 char 转换为 int 以将字符转换为 ASCII 值

将该字符转换为 ASCII 数值的最简单方法之一是将该字符转换为整型 int。由于我们讨论的是单个字符,我们不能使用多个字符。

请看下面的例子。注意我们使用单引号内的字符 a,使其数据类型为 char

public class Main {
    public static void main(String[] args) {
        int asciiValue = 'a';
        System.out.println("ASCII Numeric Value: "+asciiValue);
    }
}

输出:

ASCII Numeric Value: 97

在 Java 中 getBytes(StandardCharsets.US_ASCII) 从一个字符中获取 ASCII 值

为了使这个例子有效,我们将首先得到我们的字符作为一个字符串,然后将该字符串转换为一个字节数组。StandardCharsets.US_ASCII 将确保我们得到正确的输出值。

import java.nio.charset.StandardCharsets;
public class Main {
    public static void main(String[] args) {
        String s = "b";
        byte[] bytes = s.getBytes(StandardCharsets.US_ASCII);
        System.out.println("ASCII Numeric Value: "+bytes[0]);
    }
}

输出:

ASCII Numeric Value: 98

这种方法的好处是,我们可以直接得到多个字符的 ASCII 值,因为字符在一个字符串中。

我们有一个包含 4 个字符的字符串 s。我们可以按照下面的步骤获取所有这些字符的 ASCII 数值。

import java.nio.charset.StandardCharsets;
public class Main {
    public static void main(String[] args) {
        String s = "ball";
        byte[] bytes = s.getBytes(StandardCharsets.US_ASCII);
        System.out.println("ASCII Numeric Value of b: "+bytes[0]);
        System.out.println("ASCII Numeric Value of a: "+bytes[1]);
        System.out.println("ASCII Numeric Value of l: "+bytes[2]);
        System.out.println("ASCII Numeric Value of l: "+bytes[3]);
    }
}

输出:

ASCII Numeric Value: 98
ASCII Numeric Value: 97
ASCII Numeric Value: 108
ASCII Numeric Value: 108

String.chars() 在 Java 9+ 中将字符转换为 ASCII 值

在这个方法中,我们将使用 Java 9 中添加的 API,我们可以使用 String.chars() 得到一个 IntStream,然后使用 .boxed() 得到一个 Integer 对象的 Stream。它将以数字形式给我们提供 ASCII 值,然后我们可以将这些值放入 List<Integer> 中进行循环。

这个例子将字符串 building 作为输入,并打印出字符串中每个字符的 ASCII 值。

import java.util.List;
import java.util.stream.Collectors;
public class Main {
    public static void main(String[] args) {
        String stringValue = "building";
        List<Integer> listOfIntegers = stringValue.chars()
                .boxed()
                .collect(Collectors.toList());
        for(int i:listOfIntegers) {
                System.out.println("ASCII value "+ i);
        }
    }
}

输出:

ASCII value 98
ASCII value 117
ASCII value 105
ASCII value 108
ASCII value 100
ASCII value 105
ASCII value 110
ASCII value 103

如何在 Java 中转换字符串到日期

本教程讨论了在 Java 中把字符串转换为日期的方法。

在 Java 中使用 SimpleDateFormat 将字符串转换为日期

在 Java 中,将字符串转换为日期的最简单方法是使用 SimpleDateFormat 类。首先,我们需要定义我们的字符串格式所代表的日期,例如 yyyy-MM-dd。下面的例子说明了这一点。

import java.util.*;
import java.text.SimpleDateFormat;
import java.text.ParseException;
public class MyClass {
    public static void main(String args[]) throws ParseException {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String strDate = "2000-05-01";
        Date date = new Date(sdf.parse(strDate).getTime());
        System.out.println(date);
    }
}

输出:

Mon May 01 00:00:00 GMT 2000

让我们用几种不同的日期格式来试试。下面的例子将字符串"January 2, 2010"转换为 Java 中的日期。

import java.util.*;
import java.text.SimpleDateFormat;
import java.text.ParseException;
public class MyClass {
    public static void main(String args[]) throws ParseException {
        SimpleDateFormat sdf = new SimpleDateFormat("MMMM d, yyyy");
        String strDate = "January 2, 2010";
        Date date = new Date(sdf.parse(strDate).getTime());
        System.out.println(date);
    }
}

输出:

Sat Jan 02 00:00:00 GMT 2010

同样,你可以定义使用任何日期格式,并在 Java 中把字符串转换为日期。

如何在 JavaScript 中转换字符串为小写

在本教程中,我们将学习如何在 JavaScript 中把一个字符串转换为小写。

JavaScript 使我们能够以多种方式转换字符串。在原生 JavaScript 中,我们可以使用 toLowerCase() 原型方法将字母小写,或者使用 toLocaleLowerCase() 原型,考虑到用户/宿主的语言环境来转换小写。

在 JavaScript 中使用 toLowerCase() 将字符串转换为小写

假设我们有一个字符串-My Awesome String,我们想把它转换成小写的-my awesome string。我们可以使用原型方法 toLowerCase() 来降低它的大小写。它从输入的字符串中创建一个新的字符串,但使用所有小写字符。

让我们看一个使用 console.log() 方法转换为小写并打印到控制台的例子。

var tempText = "My Awesome String";
console.log( tempText.toLowerCase() );

你也可以像下面的例子一样,在单引号后面添加原型。

var TextConvertedToLowerCase = 'My Awesome String'.toLowerCase();
console.log( TextConvertedToLowerCase );

在 JavaScript 中使用 toLocaleLowerCase() 将字符串转换为小写

如果字符串包含特定的本地映射,如土耳其语或德语,我们可以使用 toLocaleLowerCase() 方法将字符串转换为小写。

我们可以在不发送任何参数的情况下使用 toLocaleLowerCase(),类似于 text.toLocaleLowerCase(),也可以将本地化映射作为参数发送给该方法,我们甚至可以发送一个本地化数组,JavaScript 将选择最适合的本地化映射。

在下面的例子中,我们将把一个英文字符串转换为小写,并把一个土耳其拉丁文大写字母 I 转换为小写,以向你展示如何向函数发送一个 locale 数组。

var demoText = "My Awesome Second Demo Text";
console.log(demoText.toLocaleLowerCase());
console.log(demoText.toLocaleLowerCase('en-US'));
var localeArray = ['tr', 'TR'];
var LatinCapitalLetterIWithDotAboveInTurkish = '\u0130';
console.log(LatinCapitalLetterIWithDotAboveInTurkish.toLocaleLowerCase(localeArray));

输出:

my awesome second demo text
my awesome second demo text
i

使用我们的自定义命名方法 lower() 将字符串转换为小写

如果我们对 JavaScript 不是那么熟悉,想把 toLowerCase() 的语法改成类似于我们喜欢的 Python 或 PHP 等语言的语法。在下面的例子中,我们将解释如何做到这一点。

function lower(inputString){
    return String(inputString).toLowerCase();
}
var demoText = "Our Awesome String To Lower Converter";
console.log( lower(demoText) );

将非 字符串 对象转换为小写字母

如果我们想把 Date 转换为小写,而 Date 本质上是一个非 String 对象,我们可以使用 toLowerCase()toLocaleLowerCase() 方法,因为它们都实现了对任何值类型的通用工作。

让我们在下面的例子中看看如何将 Date() 转换为小写。

var normalDate = new Date();
var lowerCaseDate = new Date().toString().toLowerCase();
console.log("Normal Date Format > "+normalDate);
console.log("Lower Case Date Format > "+lowerCaseDate);

输出:

Normal Date Format > Thu Nov 12 2020 12:07:11 GMT+0000 (Coordinated Universal Time)
Lower Case Date Format > thu nov 12 2020 12:07:11 gmt+0000 (coordinated universal time)