fromStringOrThrow

Summary

Converts a string to a valid short value or throws an exception if the value cannot be converted.

Usage

public static short fromStringOrThrow(string numberAsStr)

Returns

The short equivalent of the string value if the string is a valid short value and does not overflow (the string value fits within the short data range).

Parameters

numberAsStr

The string value to convert.

Description

Converts a string to a valid short value or throws an exception if the value cannot be converted. If the string value is not numeric, System.Exceptions.InvalidNumberException will be thrown. If the string value is outside the range of valid values for the short data type, System.Exceptions.IntegerOutOfRangeException is thrown.

For string values that are not numeric, System.Exceptions.InvalidNumberException is thrown:

import System;
import System.Exceptions;

try {
    short x = Integer16.fromStringOrThrow("100");
}
catch(InvalidNumberException e) {
    // Will not execute because the string value is numeric
    Console.error(e);
}

try {
    short y = Integer16.fromStringOrThrow("abc");
}
catch(InvalidNumberException e) {
    Console.error(e);
}

If the string being converted is numeric but does not fit into the short data range [ -32768, 32767 ] (inclusive), System.Exceptions.IntegerOutOfRangeException will be thrown.

import System;
import System.Exceptions;

try {
    short exceedByOne = Integer16.fromStringOrThrow("32768");
}
catch(IntegerOutOfRangeException e) {
    Console.error(e);
}

Examples

Valid Conversion (No exception)
1
2
3
4
5
import System;
import System.Exceptions;
 
short valid = Integer16.fromStringOrThrow("123");
Console.log(valid); // 123
Invalid Conversion (Not numeric)
1
2
3
4
5
6
7
8
import System;
 
try {
    short invalid = Integer16.fromStringOrThrow("abc");
}
catch(InvalidNumberException e) {
    Console.error(e);
}
Invalid Conversion (Out of range)
1
2
3
4
5
6
7
8
9
import System;
import System.Exceptions;
 
try {
    short exceedByOne = Integer16.fromStringOrThrow("2147483648");
}
catch(IntegerOutOfRangeException e) {
    Console.error(e);
}

Share

HTML | BBCode | Direct Link