Jak porovnávat znaky v programování Java

Programy v jazyce Java mohou porovnávat textové znaky.

Krok 1

Připravte dva znaky v programu Java. Můžete vytvořit přímo primitivní znakové proměnné nebo použít znaky, které se vyskytují v textových řetězcích, které máte. Následující příklad kódu znázorňuje dvě metody:

char firstChar = 'g'; Řetězec fullString = "apple"; char secondChar = fullString.charAt (1); // 'p'

Kód vytvoří dvě znakové proměnné. Oba jsou malá písmena abecedy, "g" a "p".

Krok 2

Porovnej své postavy. Následující příklad kódu zobrazuje porovnání dvou znaků, které určují, který je první v abecedním pořadí:

pokud (firstChar

Srovnání funguje stejným způsobem jako porovnání dvou čísel, ať už je znak větší nebo roven. Uložte kód, zkompilujte jej a spusťte jej, abyste viděli výsledek. Experiment změnou proměnných znaků ověřte, že porovnání funguje přesně.

Krok 3

Srovnejte znaky s různými případy. Malá a malá písmena jsou v jazyce Java reprezentována různými hodnotami. Z tohoto důvodu mohou porovnání někdy mít nečekané výsledky. Změňte první řádek kódu následujícím způsobem, abyste zobrazili rozdíl:

char firstChar = 'S';

Spusťte program, který by měl vydávat následující: První znak je první

To může být neočekávané, protože písmeno "S" je abecedně zpět k písmenu "p". Java představuje znaky primitivního typu pomocí jejich hodnot ASCII a velká písmena jsou reprezentována pomocí nižších čísel. Vezměte to v úvahu při porovnávání znaků.

Krok 4

Použijte objekty znaků, které reprezentují vaše znaky. Jazyk Java poskytuje třídu znaků, které mají být modelovány jako objekty namísto primitivních typů. Tyto objekty použijte ve svém kódu následujícím způsobem:

Znak firstCharacter = nový znak ('v'); Znak secondCharacter = nový znak ('t');

Třída znaků je kontejner pro primitivní typ "char". V objektech znaků je instancí vytvořena předáním znaku reprezentovaného ve své primitivní podobě jako parametru konstruktoru třídy, jak je vidět v tomto příkladu.

Krok 5

Porovnejte objekty svých postav. Třída znaků poskytuje následující metodu porovnání:

int výsledek = firstCharacter.compareTo (druhýCharacter); if (result0) System.out.println ("Druhý znak přijde první"); else System.out.println ("Obě znaky jsou stejné");

Zadejte tento kód a zkuste znovu program; musí poskytnout následující výsledek: Druhý znak je první

Všimněte si, že velká písmena jsou stále používána s nižší hodnotou při použití třídy znaků.